Tôi đang đi hạt chỉ cố gắng để unbind một handler onclick từ sự kiện trong jQuery vì vậy tôi có thể ràng buộc nó sau này vào một chức năng khác.jquery unbind click
Chúng tôi đã tách mã trong một trang thử nghiệm nên không có gì nhưng thịt, chỉ cần một nút mà các cuộc gọi một hàm và một kịch bản mà cố gắng để unbind nó:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<script src="../../Scripts/jquery-1.3.2.min.js" type="text/javascript">
</script>
<script src="../../Scripts/jquery-1.3.2.js" type="text/javascript">
</script>
<script type="text/javascript" language="javascript">
$(document).ready(function() { $("#btnNext").unbind('click'); });
function hi() {window.alert("hi");}
</script>
</head>
<body>
<input id="btnNext" type="button" value="Next" onclick="hi();" />
</body>
</html>
Bất kỳ ai biết lý do tại sao nhấp chuột event giữ gọi hàm hi() bất kể tôi đã nói gì trong document.ready?
Cảm ơn
Bạn có nghĩa là bất kỳ điều gì được đặt trong chế độ khai báo không thể hủy liên kết như thế này? – antonioh
chính xác, bạn có thể có thể unbind nó bằng $ ("# btnNext") attr ('onclick', '') ... nhưng tốt hơn để làm tất cả các ràng buộc của bạn với jQuery. Nó sạch hơn và ít khó hiểu hơn. Dễ quên về javascript bạn đã thêm vào thuộc tính của mình. ;) –
Đẹp nhất, bây giờ tôi hiểu tại sao nó không hoạt động. Tôi sẽ làm ràng buộc như bạn nói. Cảm ơn! – antonioh