是否有可能在不使用javascript中的'this'关键字的情况下获取元素的id

时间:2013-05-22 21:17:59

标签: javascript jquery

我想在不使用this关键字的情况下选择元素ID,我在函数中设置了一个参数。该参数有一条消息。

<head>
<script type="text/javascript" src="jquery-1.8.3.js"></script>
<script type="text/javascript">
function check(msg){
alert(msg)
}
</script>
</head>
<body>
<input type="text" id="me" onblur="check('this is test')" />
</body>
</html>

2 个答案:

答案 0 :(得分:2)

onblur="check(this, event)"

function check(elem, e){
   alert(e.target.id)
}

您可以使用事件对象中的传递并访问target属性。

<强> Check Fiddle

但是,避免内联事件注册并使用javascript来附加事件是一种很好的做法。

<强> HTML

<input type="text" id="me" />
<input type="text" id="again" />

<强>的Javascript

var inputs = document.getElementsByTagName('input');

for(var i=0; i<inputs.length; i++){
       inputs[i].addEventListener('blur', check); 
}

function check(e){
   alert(e.target.id)
}

<强> Fiddle

答案 1 :(得分:2)

<input type="text" id="me" onblur="check('this is test', this.id)" />

<input type="text" id="me" onblur="check('this is test', arguments[0].target.id )" />