我正在修改一个php登录表单,添加了javascript检查表单功能。我希望当用户勾选复选框时,表单为true,当复选框为空时,表单变为false。代码如下: -
//the javascript
function check_sli(form,mark,edit){
if(mark==1 || mark=="all"){
if(form.terms.value==""){
sli_check_terms.innerHTML="Please read the terms and conditions first!";
sli_check_terms.style.height="auto";
return false;
}else{
sli_check_terms.innerHTML="";
sli_check_terms.style.display = "none";
}
}
}
//the form
<form name="form_sli" id = "form_sli" ACTION="<?php echo $loginFormAction1; ?>" METHOD="POST" onSubmit="return check_sli(form_sli,'all')">
<input type="text" name="login"/><br>
<input type="password" name="password"/><br>
<input name="terms" type="checkbox" id="terms" checked="checked" onBlur="check_sli(form_sli,1)">I have read the terms and conditions<br><div id="sli_check_terms" class="right"></div>
<input type="submit" name="button" id="button" value="Login" />
</form>
以上代码适用于文本字段,例如当textfield为空时,innerHTML会弹出。但是,当使用复选框时,我不知道已检查和未检查的值,是1对0,还是!==“”vs ==“”???我应该使用onBlur还是onSubmit ???
如何修改脚本以使其适用于复选框? thanksalot!
答案 0 :(得分:0)
复选框在dom中使用.checked
,这是一个bool。
if (form.terms.checked) {
... it's checked ...
}
答案 1 :(得分:0)
而不是if(form.terms.value=="")
,请执行此操作if(form.terms.checked==false)