1

我想取消绑定函数(带有参数
<%#Eval('')%>),然后在按钮上单击绑定 jquery 或 javascript 中的函数

      <ItemTemplate>
           <tr>
              <td nowrap="nowrap" align="center">
                                                                                                  <%#Eval("Comments")%>&nbsp;
               </td>
               <td nowrap="nowrap" align="center">
                  <a id="hlnkEditVoyageAssosiatedCompanyID" onclick="FillVoyageCompanyData(<%#Eval("VoyageAssosiatedCompanyID") %>);">          Edit</a>
                </td>
            </tr>
       </ItemTemplate>

在这里我想取消绑定“FillVoyageCompanyData”功能。我是这样做的

 $("#hlnkEditVoyageAssosiatedCompanyID").unbind("click");

进而

 $("#hlnkEditVoyageAssosiatedCompanyID").bind("click", FillVoyageCompanyData);

但它不工作。它不会取消绑定功能

4

1 回答 1

1

unbind仅适用于通过 jQuery 附加的事件处理程序

代替:

<a id="hlnkEditVoyageAssosiatedCompanyID"
   onclick="FillVoyageCompanyData(<%#Eval("VoyageAssosiatedCompanyID") %>);">

<a class="hlnkEditVoyageAssosiatedCompanyID"
   data-vacid="<%#Eval("VoyageAssosiatedCompanyID") %>">

然后使用 jQuery 附加处理程序:

$('body').on('.hlnkEditVoyageAssosiatedCompanyID', 'click', function() {
    FillVoyageCompanyData($(this).data('vacid'))
});
于 2012-06-07T11:03:19.253 回答