2012-09-15 28 views
0

我想從一系列動態div值到數據庫。JQuery從每個動態行獲取價值

我的HTML的div如下....我這的jQuery

<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.... 

失敗...

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

目前這一嘗試只返回文件ID在數據屬性中。最後,我還想爲doc_holder_list div的每個實例拖出說明。

+0

在一個單獨的請注意,這個系統會公開嗎?如果是的話,我會避免讓你的文件ID很容易閱讀和編輯。顯然你需要大量清理並檢查服務器端收到的數據,但是對於某些人來說,更改file_id可能會讓你的系統完全混淆,這很容易。 – Pebbl

回答

1

您需要本地化你在每個級別的搜索,$('.red')將你的頁面,這是不是在搜索和發現所有的.red你想在這一點上有什麼 - 你想找到.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(){ 

這將是清潔寫:

$('.doc_holder_list').each(function(){ 
    .... 
}); 
+0

謝謝 - 這似乎是工作。我確實嘗試了類似的方法來描述你所描述的內容,但是我在類選擇器之前放置了'this'(如$(this,'.red2'))。我的新手錯誤:) – Sideshow

+0

啊,我看到...是啊輕鬆完成:) – Pebbl