jquery .on()只能运行一次

时间:2013-08-21 11:29:24

标签: javascript jquery html

我有一个包含多个复选框输入的表格:

<form>
<table id="table">
    <tr>
      <td><input type="checkbox" value="1" class="someClass"></td>
      <td><input type="checkbox" value="1" class="someClass"></td>...

一些jquery在选中/取消选中该框时会从另一个文件刷新表:

$(".someClass").on("change", function() {
        $('#edit').ajaxSubmit(); //Submitting the form with id "edit"
        $("#table").load("tablerefresh");
 });

我的问题是,当我选中/取消选中一个方框时,表格只刷新一次,而且每次检查/取消选中该方框时都应该这样做,我到处寻找并且似乎无法找到解决方案。有什么想法吗?

2 个答案:

答案 0 :(得分:6)

这可能是授权问题,因为#table不会更改,请将其用作范围,内部定位.someClass

$("#table").on("change", ".someClass", function() {
  $('#edit').ajaxSubmit(); //Submitting the form with id "edit"
  $("#table").load("tablerefresh");
});

注意:

您还可以使用delegate()

$("#table").delegate(".someClass", "change", function(){
  //Code
});

答案 1 :(得分:1)

试试这个:

$(document).on("change", ".someClass" , function() {
        $('#edit').ajaxSubmit(); //Submitting the form with id "edit"
        $("#table").load("tablerefresh");
 });