JQuery从每个动态行获取值

时间:2012-09-15 09:51:12

标签: jquery jquery-selectors each

我试图将一系列动态div中的值从wirte变为db。

我的div的html如下....

<div class='doc_holder_list'>
<p class='right'> (Delete [<a href='javascript:void(0);' class='appended'>X</a>])</p>
<p><span class='red2' data-file_id='10'>File 10</span></p>
<p class='file_desc1a'>File Description 10</p>
<p class='file_ins1a'>File Notes 7</p>
</div>
<div class='doc_holder_list'>
<p class='right'> (Delete [<a href='javascript:void(0);' class='appended'>X</a>])</p>
<p><span class='red2' data-file_id='34'>File 7</span></p>
<p class='file_desc1a'>File Description 7</p>
<p class='file_ins1a'>File Notes 7</p>
</div> etc....

我的JQuery失败了......

$.each($('.doc_holder_list'),function(){
            var get_file_id=$('.red2').data('file_id');
            get_files+=get_file_id+"|";
            alert(get_files);
        });

目前,这是尝试仅返回data属性中的文件ID。最后,我还要为doc_holder_list div的每个实例拖出描述。

1 个答案:

答案 0 :(得分:1)

您需要在每个级别本地化您的搜索,$('.red')将搜索并找到您网页上的所有.red,这不是您想要的 - 您想要找到{{ 1 {} .red内:

(请注意,以下方法可能只有在您执行以下有关使用.doc_holder_list而不是$('').each()

的建议时才有效。
$.each()

/// this allows you to search within an existing jQuery selection
/// as you are within an each() "this" will refer to .doc_holder_list
get_file_id=$(this).find('.red2')

上述任何一种都应该排序你的问题...

此外,而不是:

/// this defines the 'context' of where your jQuery search will occur
/// as you are within an each() "this" will refer to .doc_holder_list
get_file_id=$('.red2', this)

写作会更清晰:

$.each($('.doc_holder_list'),function(){