1

我正在尝试编写类似这样的代码:

$('[id^=myitem_]').data(
    'powq',
     $([
         '<p><b>Description:</b></br>'+$(this).find("input[name=description]").val()+'</p>',
         '<p>Some other data:</p>'
     ].join(''))
);

正如您在“价值”内部看到的那样,我想在里面捕捉对象[id^=myitem_],但我不能。在这种情况下,每次我得到整个文档中的第一个对象。我认为在这里,在“价值”内部,$(this)是指窗口或整个文档。

任何的想法..?

4

2 回答 2

4

this所指的内容取决于您执行该代码的上下文。很可能它指的是window虽然。

如果您希望它引用每个[id^=myitem_]元素,那么您必须使用.each [docs]来遍历所有选定的元素:

$('[id^=myitem_]').each(function() {

    $(this).data(
        'powq',
         $([
             '<p><b>Description:</b></br>'+$(this).find("input[name=description]").val()+'</p>',
             '<p>Some other data:</p>'
         ].join(''))
    );
});
于 2012-12-25T11:41:41.043 回答
0

使用 ID 访问 div 元素myitem

$("#myitem")

不过,我可能完全误解了你的问题。

于 2012-12-25T11:39:50.677 回答