我尝试将checkbox
值上传到我的db
,它正确上传但未经过验证。如果我没有检查任何内容,它仍会POST
其他字段上的其余值,而不是提醒我从我的复选框中选择。我所有设置都没有正常工作。我是否正确验证了checkbox
值?
这是我的HTML代码:
<table width="200">
<tr>
<td>
<label>
<input type="checkbox" name="Verification[]" value="Test1" id="Verification_0" />
BuildServerPath</label>
</td>
</tr>
<tr>
<td>
<label>
<input type="checkbox" name="Verification[]" value="Test2" id="Verification_1" />
File Exist</label>
</td>
</tr>
<tr>
<td>
<label>
<input type="checkbox" name="Verification[]" value="Test3" id="Verification_2" />
WBS Code</label>
</td>
</tr>
<tr>
<td>
<label>
<input type="checkbox" name="Verification[]" value="Test4" id="Verification_3" />
UAT Contact</label>
</td>
</tr>
</table>
以下是我POST
的方式,我有两个选项
$Verification = implode('\r', $_POST['Verification']);
OR
$verify="";
$flag=0;
foreach($Verification as $entry){
$verify .= $entry."\r";
$flag=1;
}
if($flag==1){
$verify=rtrim($verify);
}
现在,我将尝试验证它。此类验证适用于我的radio button
和text fields
; document.form1.verify.value==""
已更改为verify
或Verification
,具体取决于我使用的帖子方法
function validateDBLoad()
{
if ((document.form1.verify.value == "")
{
alert('Please fill up all the fields..');
return false;
}
else
{
alert('Ticket upload Successful.');
return true;
}
}
我还尝试按照此处的步骤进行操作:Checkbox validator但似乎无法使用我已设置的验证码,它会向我发出提醒,请选择一个复选框!& #34;但同时上传我的其他值,
以下是我尝试过的js
var inputs = document.getElementById('my-form').getElementsByTagName('input');
var checked = 0;
for (var i = 0, length = inputs.length; i < length; i++) {
if (inputs[i].getAttribute('type') !== 'checkbox') {
continue;
}
if (inputs[i].checked) {
checked++;
}
}
if (checked === 0) {
alert('Select a checkbox, please!');
}
答案 0 :(得分:0)
只需你可以做到这一点
if(document.querySelectorAll('#my-form input[type=checkbox]:checked').length===0){
alert("Please select atleast one checkbox");
return false;
}
if(validationForYourOtherFieldsIsNotFine){
alert("Other validations will happen here");
return false;
}