我已使用事件处理程序更改消息,但在单击链接后消息不会更改。
<a href="javascript:void(0);">Test 1</a>
<a href="javascript:void(0);">Test 2</a>
这是javascript文件:
$("a").bind("click", { message : msg }, function(event) {
msg = "Changed msg";
alert(event.data.message);
});
答案 0 :(得分:1)
如果您想更改锚标记的文本,可以like this:
$("a").bind("click", function(event) {
$(event.target).text('Changed msg');
});
这可以缩短,因为事件处理程序内部的this
将引用event.target
或您将函数绑定到的内容(锚标记)。所以你可以这样编写以上内容:
$("a").bind("click", function() {
$(this).text('Changed msg');
});
您不能简单地设置值来改变文档对象模型(DOM)。您需要使用text
和html
等方法来告诉jQuery您想要做什么。您可以使用vanilla JavaScript完成此操作。
正如评论中所提到的,eventData
是一个可以包含的对象,用于将long传递给事件处理程序。但它不能改变或改变事物。