无法为复选框添加选中的属性

时间:2012-03-05 07:32:08

标签: javascript

<input type=checkbox id="chk1" name="chk" onclick="getchecked('chk1')"/>
<input type=checkbox id="chk2" name="chk" onclick="getchecked('chk2')"/>

getchecked(pId)
{
  if(pId.checked==true)
    alert('ok');
  else
    alert('not ok');
}

在我的运行时,如果我选中任何复选框,它不会为该复选框添加checked属性,我在Developer工具栏中验证了这一点。

所以它总是进入else块为什么?

1 个答案:

答案 0 :(得分:1)

试试这样:

<input type=checkbox id="chk1" name="chk" onclick="getchecked(this)"/>
<input type=checkbox id="chk2" name="chk" onclick="getchecked(this)"/>

function getchecked(checkbox)
{
  if(checkbox.checked)
    alert('ok');
  else
    alert('not ok');
}

即。将checkbox-object传递给函数而不是它的ID。否则,您必须在函数内部使用var checkbox = getElementById(pId),然后才能调用checkbox.checked

您的问题中也缺少function关键字(我猜这是一个复制/粘贴错误)。