2014-07-24 36 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