Xin chào, tôi đang học JQuery và tôi đã viết một hàm nhỏ trong đó tôi đính kèm một hàm bằng sự kiện nhấp chuột của nút.Làm thế nào để vượt qua sự kiện dưới dạng tham số trong hàm JQuery
này là yếu tố đầu của HTML
<script type="text/javascript">
$(pageLoaded);
function pageLoaded()
{
$("#Button1").bind("click",
{ key1: "value1", key2: "value2" },
function buttonClick(event)
{
$("#displayArea").text(event.data.key1);
}
);
}
</script>
Đây là cơ thể của HTML
<input id="Button1" type="button" value="button" />
<div id = "displayArea" style="border:2px solid black; width:300px; height:200px">
Mã này hoạt động tốt. Nhưng khi tôi cố gắng viết chức năng buttonClick bên ngoài phương thức ẩn danh, nó không hoạt động nữa.
tôi cố gắng gọi nó theo cách này:
$("#Button1").bind("click",
{ key1: "value1", key2: "value2" },
buttonClick(event));
function buttonClick(var event)
{
$("#displayArea").text(event.data.key1);
}
này không hoạt động. Tôi có mắc sai lầm nào trong khi chuyển tham số Event as? cách chính xác để làm điều đó mà không sử dụng các phương pháp nặc danh là gì?
+1 là người đầu tiên thực sự giải thích những gì họ đã làm sai, thay vì chỉ đăng mã. –
+1. Điều đáng nói, rằng nếu bạn định nghĩa hàm theo cách nó xảy ra trong câu trả lời này, mọi thứ sẽ hoạt động. Nhưng nếu bạn định nghĩa hàm như vậy: 'var buttonClick = function (event) {...}', định nghĩa sẽ cần phải được đặt trước khi "tham chiếu hàm" đang được sử dụng (trong trường hợp này: trước '$ (" # Button1 "). Bind (...)' được gọi). – Tadeck
@Tadeck, Cảm ơn Ngài, tôi có thể thêm điều đó vào câu trả lời của mình không? –