这是一大堆代码......
echo "<td>
<input type='checkbox' value='online_$row[0]' " .
$checked[$row[$i]]. " onchange='background()'/>
</td>";
这里是非常简单的javascript代码......
function background()
{
alert(this.value);
}
如何使用this关键字获取该复选框的名称?
答案 0 :(得分:4)
echo "<td>
<input type='checkbox' value='online_$row[0]' " .
$checked[$row[$i]]. " onchange='background(this)'/>
</td>";
function background(ele)
{
alert(ele.value);
}
答案 1 :(得分:2)
this
是onclick
函数内部的输入......但是该函数在没有任何上下文的情况下调用background
,因此它在window
内获得默认上下文,因此在该函数内{ {1}}是this
直接将window
函数绑定到input元素,而不是使用background
属性创建新函数。
onclick
请参阅MDN for more reading on addEventListener,包括有关浏览器兼容性的说明。
答案 2 :(得分:1)
在JS函数中,您必须传递一个对象,因此实际定义了“this”。 例如,您可以使用:
function background(elem)
{
alert(elem.value);
}
一旦该函数没有任何参数,就没有定义“this”,因此该函数不会作为例外运行。