2012-05-18 59 views
0

我有兩個表,我想從一個表添加行到另一個,基於使用複選框選擇的行,它將行從一個表添加到另一個表,但它不是根據行添加,但基於單元格,這裏是我正在使用的: 當單擊按鈕時,它循環遍歷所有被檢查的行,並刪除第一個單元格作爲複選框,並添加包裹在單元格中的其餘單元格行到下一個表,我認爲它會將結果單元格包裝到行中,但不是這種情況,因爲當我選擇多行時,它直接附加在最後一行最後一行的末尾。從一個表到另一個表中添加行的Jquery問題

$("#btnAddStories").click(function() { 
      $checkedStories = $("#dnn_TopStories_grdTopStoriesSearch input[type=checkbox]:checked"); 
      $.each($checkedStories, function (index, item) { 
       $row = $(this).closest("tr").clone().find("td:not('.firstCell')").remove(); 
       $('#tblTopstories tbody').append($row); 
      }); 
     }); 

enter image description here

回答

1

更改答案完全爲我以前的答案其實並沒有回答你的問題!

的問題是,當你設置$row,你只能調用從該行的細胞,這種情況發生的時候,你做.find()

,以使其正常工作,你需要改變你的附加到這一點:

$('#tblTopstories tbody').append($('<tr/>', {html: $row}); 

什麼,做是它創建了一個<tr></tr>並設置HTML內容的$row

內容對於你的代碼的清晰度,我會改變的名稱$row$cells但這只是個人偏好。

此外,當您點擊#btnAddStories元素出現的潛在問題,所以我想改變.click().on('click')並添加.off('click')的啓動,防止鬼點擊。 (有時事件會在第一次點擊時觸發一次,在第二次點擊時觸發兩次,在事件分配之前調用.off()可防止多次應用事件處理程序,[這通常是事件處理程序在函數內部分配的情況])

$("#btnAddStories").off('click').on('click', function(){ 
    ... 
}) 
+0

你可以幫我呼籲解除綁定功能,在哪裏以及如何調用該函數... – Abbas

+0

看我的更新,你應該使用.off()。在(「點擊」,函數(){})不過,他們已經開始貶低舊功能。 –

+0

叫我白癡,我誤解了你的問題。現在發佈新的答案 –

相關問題