Данные и объекты jQuery

Я пытаюсь написать код примерно так:

$('[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) среднее окно или весь документ.

Любая идея..?

2 ответа

Решение

Какие this ссылается зависит от контекста, в котором вы выполнили этот код. Вероятно, это относится к window хоть.

Если вы хотите, чтобы это относилось к каждому [id^=myitem_] элемент, то вы должны использовать .each [документы], чтобы перебрать все выбранные элементы:

$('[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(''))
    );
});

Для доступа к элементам div с идентификатором myitem:

$("#myitem")

Я, возможно, полностью неправильно понял ваш вопрос.

Другие вопросы по тегам