2014-07-24 59 views
0

我有嵌套的記錄,我通過ajax重新插入到另一個表中, 當我提交數據時我有一個腳本在發送表單時將按鈕消息更改爲「已發送」。現在,我認爲腳本只適用於一條記錄,但不適用於嵌套記錄,因爲當來自數據庫的記錄被填充時,我點擊第一個按鈕它會改變,但不會當我從第二個按鈕向下點擊時。更改嵌套的按鈕值

<script language="javascript"> 
$(function(){ 
    $('input:submit', 'form').click(function(){ 
     $(this).val('Sent'); 
     $(this).attr('disabled', 'disabled'); 
    }); 
}); 
</script> 

AJAX插入

$(document).ready(function(){ 
    $("form").on('submit',function(event){ 
     event.preventDefault();  
     data = $(this).serialize();  
     $.ajax({ 
     type: "POST", 
     url: "sample.php", 
     data: data 
     }).success(function() {  
      $("input[type=text]").val("");  
     }); 
    }); 
}); 
+0

將'onclick'監聽器附加到新元素上? – Fabricator

+0

怎麼樣?我是新的ajax – blay

+0

嘗試再次調用你的'.click'函數'onsuccess'回調 – Fabricator

回答

0

當你運行像$('input:submit', 'form')它創建一個jQuery集合與存在於該時間的項目。如果稍後添加新元素,它們不會附加到現有變量(這是一個好主意)。

您可以在添加新項目時重新運行綁定代碼,也可以在從頭開始存在的頂級元素上使用事件委託。

+0

請你能說出它到我的代碼。因爲我在jQuery中並不擅長 – blay