无法在json中传递null值

时间:2011-12-02 08:22:12

标签: jquery json

JQuery的:

        var Arr = new Array()
        var Selected = null;
        if ($('#chk').is(':checked')) {
            var List = $('#sellist option:selected');
            $.each(List, function(index, item) {
                Arr.push($(this).val());
            });
            Selected = Arr.join(',');
        }

我必须将Selected作为json参数传递。如果选中复选框,则Arr不为空,因此代码工作正常,但当Arr为空或空时我无法通过作为参数。我使用""代替null,但无法解决问题。如何处理这种情况。谢谢。

2 个答案:

答案 0 :(得分:0)

我不会问到问题出在哪里,如果我这样做的话:

var Selected = null;
var object = { selected: Selected};
console.log(object);

我没有错误,我只有一个具有空值的属性的对象。也许你在创建对象时做错了什么或者我错过了什么。

编辑 - 如果问题是你必须通过ajax发送它,你可以简单地跳过参数如果是null然后检查参数是否存在于服务器端,或者你可以为其赋值false

答案 1 :(得分:0)

在从$('#sellist option:selected');选择器获取值之前,您需要先预先选择选择框。您可以在var List = $('#sellist option:selected');代码之前插入它。 `