Php 获取复选框值/名称将显示空警报或未定义警报
这是php代码块Php 获取复选框值/名称将显示空警报或未定义警报,php,javascript,Php,Javascript,这是php代码块 echo "<td> <input type='checkbox' value='online_$row[0]' " . $checked[$row[$i]]. " onchange='background()'/> </td>";
echo "<td>
<input type='checkbox' value='online_$row[0]' " .
$checked[$row[$i]]. " onchange='background()'/>
</td>";
如何使用this关键字获取复选框的名称?echo”
echo "<td>
<input type='checkbox' value='online_$row[0]' " .
$checked[$row[$i]]. " onchange='background(this)'/>
</td>";
function background(ele)
{
alert(ele.value);
}
";
功能背景(ele)
{
警报(元素值);
}
此
是onclick
函数内的输入…但该函数调用后台
,没有任何上下文,因此它获取窗口的默认上下文
,因此在该函数内此
是窗口
将background
函数直接绑定到输入元素,而不是使用onclick
属性来创建新函数
refToInput.addEventListener('change', background);
请参阅包含浏览器兼容性说明。在JS函数中,您必须传递一个对象,因此“this”将被实际定义。 例如,您可以使用:
function background(elem)
{
alert(elem.value);
}
一旦函数没有任何参数,“this”就没有定义,因此函数不会作为例外运行。我正在读这篇文章。。。也许我误解了?我以为从元素调用函数时,“this”会引用该元素。@deusdecit-是的,但正如答案所说,您是从元素调用
onclick
,从onclick
函数调用background
。
function background(elem)
{
alert(elem.value);
}