javascript操作错误

javascript on action error

本文关键字:错误 操作 javascript      更新时间:2023-09-26

更改选择框后,必须收集选中的复选框ID并提交

$("#action").change(function(){
    if(($(this).val())!='0'){
        var data = { 'req_ids[]' : []};
        var doit = $("#action").val();
            $(".checkboxes:checked").each(function(){
              data['req_ids[]'].push($(this).attr('id'));
            });
            var size = Object.size(data['req_ids[]']);
                if(size>0){
                    $.post("workplan-requests.php?action=update&do="+doit, data);
                    $("tr.checked").remove();
                }
    $("#action").val('0');
    }
});

但当我通过更改选择框来选择我的操作时,它显示这个错误:

TypeError: Object.size is not a function
var size = Object.size(data['req_ids[]']);

我知道这个错误是因为java脚本同时运行整个代码,但我怎么能解决这个问题!?

它应该是

var size = data['req_ids[]'].length;

也可以尝试

$("#action").change(function () {
    if (($(this).val()) != '0') {
        var data = {};
        data['req_ids[]'] = $(".checkboxes:checked").map(function () {
            return this.id
        }).get();
        var size = data['req_ids[]'].length;
        if (size > 0) {
            var doit = $("#action").val();
            $.post("workplan-requests.php?action=update&do=" + doit, data);
            $("tr.checked").remove();
        }
        $("#action").val('0');
    }
});