我们说我有一个按钮。 <input type="button" value="Click me" onClick="MyFuncion()">
在函数中,我想获得按钮对象
我尝试了以下方法:
function MyFunction()
{
this.value = "Another text";
}
&#13;
<input type="button" value="Click me" onClick="MyFuncion()">
&#13;
我的意图是将按钮的文本更改为另一个文本。
如您所见,this
并未指向该按钮。我的猜测是指向功能本身
我该怎么做?
简而言之,我的问题是:如何获取调用函数的对象?
答案 0 :(得分:2)
当您从onclick属性调用该函数时,“this”上下文可用,您可以将其传递到您的函数中:
function MyFunction(button)
{
button.value = "Another text";
}
<input type="button" value="Click me" onclick="MyFunction(this)">
您的函数中的“this”上下文将是“window”,或者如果您处于严格模式,则为null。这是因为函数被称为函数而不是方法。
答案 1 :(得分:1)
将this
传递给MyFunction。
<input type="button" value="Click me" onClick="MyFunction(this)">
function MyFunction(el) {
el.value = "Another text";
}