0

新的和努力学习。

我在页面左侧有一个帐户名称表。当我单击其中一个帐户名称时,相关字段将显示在表单中。然后我可以更新任何字段并单击“更新”以更新基础 SQL 数据。

我还有一个文本字段和一个按钮来添加另一个帐户。这只是添加了一条新记录,其中帐户名称作为唯一填写的字段。现在我希望能够在上面提到的表格中单击该帐户,然后更新新帐户的信息。但是,单击表中的帐户不再导致其字段显示在表单中。

要添加帐户,我会在 PHP 页面上发布一个帖子,然后将该页面创建的 HTML 加载到包含该表的 div 中。到目前为止,一切都很好。

 $("button#new").click (function (){
     company = $("input#newaccount").val();

     $.post ('db_addaccount.php',
     {'company':company},showaccounts)
      return;
  }) 

  function showaccounts(data){
     $('div#table').html(data)
  }

但是,我知道这个新加载的 HTML 破坏了 DOM,我不能再期望单击表中的一行并在我的表单中反映字段。

我知道 .on 功能,但无法弄清楚在这种特殊情况下是否/如何使用它。

任何建议,将不胜感激。

4

1 回答 1

1

希望您为多个元素使用类,例如每个帐户,而不是相同的 ID 等。您需要on()用作委托事件处理程序,在下面的示例tableID中将是您的表的 ID(这不是动态的?)并且.accounts将是每个帐户(使用 $.post 函数动态插入):

$('#tableID').on('click', '.accounts', function() {
    //do stuff
});
于 2012-12-07T04:45:40.107 回答