我想问你关于我的复选框。
我有一个复选框,表示值来自数据库。因此,如果值匹配,则会选中复选框。
现在我在应该检查时遇到问题,但未勾选复选框。
我在负载中看到了我身体的问题,但我不知道如何解决它。我怎么知道那里的问题?因为如果我刷新页面2或3次,复选框将在该复选框之后再次取消选中。
这是我的JS代码:
function ActionCcdCheck (theForm)
{
if (theForm.ccd_chk.checked)
{
theForm['ccd_pos[]'][0].className = 'part';
theForm['ccd_pos[]'][1].className = 'part';
theForm['ccd_pos[]'][2].className = 'part';
theForm['ccd_pos[]'][0].disabled = false;
theForm['ccd_pos[]'][0].checked = false;
theForm['ccd_pos[]'][1].disabled = false;
theForm['ccd_pos[]'][1].checked = false;
theForm['ccd_pos[]'][2].disabled = false;
theForm['ccd_pos[]'][2].checked = false;
}
else
{
theForm['ccd_pos[]'][0].disabled = true;
theForm['ccd_pos[]'][1].disabled = true;
theForm['ccd_pos[]'][2].disabled = true;
}
}
function LoadCondition ()
{
ActionCcdCheck (document.form);
}
这是我的复选框代码:
<body onload="LoadCondition();">
<form>
<?php
if(strpos($q_ccd_pos, 'front') === false)
{
echo "<input type='checkbox' name='ccd_pos[]' value='front' class='part' onkeypress='FocusChange (this.form, 6, 3);'/> Front";
}
else
{
echo "<input type='checkbox' name='ccd_pos[]' value='front' class='part' onkeypress='FocusChange (this.form, 6, 3);' checked/> Front";
}
if(strpos($q_ccd_pos, 'back') === false)
{
echo "<input type='checkbox' name='ccd_pos[]' value='back' class='part' onkeypress='FocusChange (this.form, 7, 2);'/> Back";
}
else
{
echo "<input type='checkbox' name='ccd_pos[]' value='back' class='part' onkeypress='FocusChange (this.form, 7, 2);' checked/> Back";
}
if(strpos($q_ccd_pos, 'fb') === false)
{
echo "<input type='checkbox' name='ccd_pos[]' value='fb' class='part' onkeypress='FocusChange (this.form, 8, 1);'/> FB";
}
else
{
echo "<input type='checkbox' name='ccd_pos[]' value='fb' class='part' onkeypress='FocusChange (this.form, 8, 1);' checked/> FB";
}
?>
</form>
</body>
请指教。
谢谢
答案 0 :(得分:0)
我看不到您的复选框ccd_chk
来测试:
if (theForm.ccd_chk.checked)
所以我创建一个:
<form>
<?php
echo "<input type='checkbox' name='ccd_chk' value='chk' class='part' checked /> chk\n";
if(strpos($q_ccd_pos, 'front') === false)
[...]
这显然是错误的
if (theForm.ccd_chk.checked)
替换为
if (theForm['ccd_chk'].checked ) {
也在LoadCondition ()
function LoadCondition ()
{
ActionCcdCheck (document.form);
}
与
ActionCcdCheck(document.forms[0]);
现在它应该工作: - )