Javascript 如何在jquery中获取当前选定元素的标记名

Javascript 如何在jquery中获取当前选定元素的标记名,javascript,jquery,Javascript,Jquery,我使用$'[attribute]'选择html节点。当我使用节点时,最好知道选择了哪个html元素 伪代码: $('body').on('click', '[action]', function(){ var htmlElementName = this.name; if(htmlElementName == 'form'){ return; } //do stuff }); 只需获取标记名属性的值: var htmlEle

我使用$'[attribute]'选择html节点。当我使用节点时,最好知道选择了哪个html元素

伪代码:

$('body').on('click', '[action]', function(){
    var htmlElementName = this.name;

    if(htmlElementName == 'form'){
        return;
    }

            //do stuff

});
只需获取标记名属性的值:

var htmlElementName = this.tagName;
REF:

您可以使用此.tagName


根据标题,在jQuery中

$(this).prop('tagName');
本机版本似乎更简单

this.tagName
请注意,情况可能会有所不同,因此使用toLowerCase通常是一个好主意

尝试以下方法:


你看,它太简单了,我找不到这个。我尝试了tagname、name、elementname和nodename。只是忘了一个大写字母!是的,有时会发生这种情况,javascript是区分大小写的,这就是为什么。根据不同的情况,只有HTML和XML会有所不同:在XHTML或任何其他XML格式中,span会收到警报。在HTML中,SPAN将收到警报。。因此,如果OP与适当的HTML文档配合使用,则应返回大写名称。@VisioN-这就是为什么它可能会有所不同,我总是使用toLowerCase来避免出现问题,因为我永远记不起它何时为小写,何时为大写。有趣的是,您不使用toUpperCase@愿景——事实上,我已经创建了自己的定制课程,我使用它;顺便说一句,你知道托卡米尔卡塞吗?
this.tagName
$('body').on('click', '[action]', function(e){

    var htmlElementName = $(this).prop("tagName");

});