0

我不能让它对每个按钮都起作用,我找不到任何解释原因的东西。我想这是我想念的小东西

$(document).ready(function() {
  // delete the selected row from the database
  $(document).on('click', '#business-area-delete-button', { model: "BusinessArea" }, deleteRow);
  $(document).on('click', '#business-type-delete-button', { model: "BusinessType" }, deleteRow);
  $(document).on('click', '#client-delete-button', { model: "Client" }, deleteRow);
  $(document).on('click', '#client-type-delete-button', { model: "ClientType" }, deleteRow);
  $(document).on('click', '#communication-channel-type', { model: "CommunicationChannelType" }, deleteRow);
  $(document).on('click', '#parameter-type-delete-button', { model: "ParameterType" }, deleteRow);
  $(document).on('click', '#validation-method-delete-button', { model: "ValidationMethod" }, deleteRow);
}

事件

function deleteRow(event){
  $.ajax(
    {
      type:'POST',
      data: { id: $(".delete-row").attr("id") },
      url:"/mysite/admin/delete" + event.data.model,
      success:function(data,textStatus){
        $('#main-content').html(data);
      },
      error:function(XMLHttpRequest,textStatus,errorThrown){
       jQuery('#alerts').html(XMLHttpRequest.responseText);
      },
      complete:function(XMLHttpRequest,textStatus){
        placeAlerts()
      }
    }
   );
   return false
};

这仅适用于具有 id 验证方法删除按钮的按钮。我使用文档而不是按钮本身,因为按钮包含在稍后通过 ajax 加载的模板中。

我有一个类似的功能,它正在选择表中的一行,但是我没有尝试在这种情况下传递数据。

4

2 回答 2

1

如果您的按钮尚未加载,请尝试live使用on

于 2012-11-11T22:57:49.567 回答
0

正如我所怀疑的那样,这是非常小的东西。该死的错别字!哈哈。无论哪种方式都可以保持这种建设性,因为我相信其他人可能会遇到同样的问题。

所以

live() 比 on() 更好用吗(它们都有效)。

于 2012-11-11T23:06:40.177 回答