php – 发布多个复选框值的数组
发布时间:2020-12-13 13:53:00 所属栏目:PHP教程 来源:网络整理
导读:为什么只有“db”复选框值数组的一个值被发送到服务器端脚本? JQUERY: $(".db").live("change",function() { $(this).add($(this).next("label")).add($(this).next().next("br")).remove().insertAfter(".db:last + label + br"); var url = "myurl.php";
为什么只有“db”复选框值数组的一个值被发送到服务器端脚本?
JQUERY: $(".db").live("change",function() { $(this).add($(this).next("label")).add($(this).next().next("br")).remove().insertAfter(".db:last + label + br"); var url = "myurl.php"; var db = []; $.each($('.db:checked'),function() { db.push($(this).val()); }); if(db.length == 0) { db = "none"; } $.post(url,{db: db},function(response) { $("#dbdisplay").html(response); }); return true; }); HTML: <input type="checkbox" name="db[]" class="db" value="track"/><label for="track">track</label></br> <input type="checkbox" name="db[]" class="db" value="gps"/><label for="gps">gps</label></br> <input type="checkbox" name="db[]" class="db" value="accounting"/><label for="accounting">accounting</label></br> 编辑:我最后回答了我自己的问题,但有没有人有文件(或解释)为什么这是必要的?我很难找到确切的答案(因此是死后的帖子).
我同意@jjclarkson.只是添加,而不是将您的ID推送到数组,您可以使用
$.map:
$(".db").live("change",function() { $(this).add($(this).next("label")).add($(this).next().next("br")).remove().insertAfter(".db:last + label + br"); var url = "myurl.php"; var db = $('.db:checked').map(function(i,n) { return $(n).val(); }).get(); //get converts it to an array if(db.length == 0) { db = "none"; } $.post(url,{'db[]': db},function(response) { $("#dbdisplay").html(response); }); return true; }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |