在一个jQuery函数中,我将获取表单元素上的事件,单击event。现在我想得到它的html。怎么可能呢?
例如,:
function(event, ID, fileObj, response, data) {
alert( $(event.target) ); // output: [object Object]
alert( event.target ); // output: [object HTMLInputElement]
alert( $(event.target).html() ); // output: (nothing)
}
我想要通过event
点击表单对象的元素
谢谢
发布于 2011-10-09 08:23:50
您可以尝试event.target.outerHTML
,但是我不确定它在所有浏览器中支持得有多好。一个更复杂但肯定有效的解决方案是将元素包装在另一个元素中,然后获取父元素的html:
$('<div/>').html($(event.target).clone()).html();
发布于 2012-11-19 17:14:54
如果您的事件是click
,则可以使用来自jQuery的click()
方法绑定它。使用this
到达元素,如下所示:
$('#id').click(function(event){
console.log($(this));
});
发布于 2015-06-15 12:28:43
我找到的最优雅的解决方案就是简单地使用事件目标上的属性。下面是一个如何检测事件源html标记的示例。此示例假设您已将列表项绑定为带有CSS类名myUnorderedList的无序列表事件,但如果在列表项中单击锚标记,则要禁用默认操作。
$('ul.myUnorderedList').on('click', 'li', function(event){
console.log('tagName: '+ event.target.tagName); //output: "a"
console.log('localName: '+ event.target.localName);//output: "a"
console.log('nodeName: '+ event.target.nodeName); //output: "A"
if(event.target.tagName == 'a')
return; // don't do anything...
// your code if hyperlink is not clicked
});
https://stackoverflow.com/questions/7702247
复制相似问题