Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取复选框值/名称将显示空警报或未定义警报_Php_Javascript - Fatal编程技术网

Php 获取复选框值/名称将显示空警报或未定义警报

Php 获取复选框值/名称将显示空警报或未定义警报,php,javascript,Php,Javascript,这是php代码块 echo "<td> <input type='checkbox' value='online_$row[0]' " . $checked[$row[$i]]. " onchange='background()'/> </td>";

这是php代码块

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); 
}