使用Javascript获取所有复选框的值
当点击一个按钮时,一个新的类别被添加到数据库中,并且也显示在同一页面上。但我的问题是,当我多次点击按钮时,它会为同一复选框值添加多个复选框。我让它插入到数据库中,只有当它还不存在的时候。我的问题是,当我点击按钮时,如果它不在数据库中,它应该添加类别。我有两个功能使用Javascript获取所有复选框的值,javascript,php,html,mysql,checkbox,Javascript,Php,Html,Mysql,Checkbox,当点击一个按钮时,一个新的类别被添加到数据库中,并且也显示在同一页面上。但我的问题是,当我多次点击按钮时,它会为同一复选框值添加多个复选框。我让它插入到数据库中,只有当它还不存在的时候。我的问题是,当我点击按钮时,如果它不在数据库中,它应该添加类别。我有两个功能 添加_cat();javascript函数,调用ajax将新类别添加到数据库中 是用于创建新页面的php函数 在页面上显示复选框时,我使用name=cats[]类数组来显示所有复选框,如 <input type="checkbox
<input type="checkbox" name="cats[]" id="<?php echo $row{'term_id'};?>" value="<?php echo $row{'name'};?>"> <?php echo $row{'name'}; ?> `
`
在add_cat()函数中,我使用了以下代码
var val = document.getElementById('cat_name').value;
var checkboxes = document.getElementsByName('cats');
var flag = 0;
for (var i = 0, n = checkboxes.length; i < n; i++) {
if (checkboxes[i] == val) {
flag = 1;
}
alert(flag);
} //check the duplicates
if (flag == 1) {
alert(flag);
document.getElementById('error').innerHTML = "Already exists";
setTimeout(function() { // to show the Error
$('#error').fadeIn("fast").delay(500).fadeOut("slow");
}, 1500);
flag = 0;
} else {
var div = document.getElementById('divContainer');
div.innerHTML = div.innerHTML + "<input id='chk_" + idCounter + "' type='checkbox' checked value='" + val + "' /><label for='chk_" + idCounter + "'>" + val + "</label>";
idCounter++;
cat_2_db(val); // call ajax to insert category in database
}
var val=document.getElementById('cat_name').value;
var复选框=document.getElementsByName('cats');
var标志=0;
对于(变量i=0,n=checkbox.length;i
但问题是,标志永远不会变为1,并且checkbox变量不会返回您没有找到的复选框值:
if (checkboxes[i].value === val) {
重构for循环
for(var i = 0, i < checkboxes.length; i++) {
if (checkboxes[i].value === val) {
flag = 1;
}
}
for(变量i=0,i
-1质量非常差。请重新格式化您的问题并使其可读…好的@cept0我做得很好,不要降低我的声誉我已经很差了你好的,我的意思是声誉是我们仅限于使用堆栈函数,这就是为什么我们拒绝发布下一个qnif(复选框[i].value==val){
检查价值OK好吧,我没有时间报复,我总是把答案投白色,我觉得这很有帮助