2011-12-02 47 views
0

JQuery的:无法在JSON传递null值

 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 parameter.When复选框Arr没有空,因此代码工作正常,但当Arr为空或空我我无法作为参数传递。我用""而不是null但无法解决问题。如何处理这种情况。谢谢。

+1

很含糊的问题。你谈论一些复选框,并同时在下拉列表中执行选择器。 –

+0

您发布了相关的代码? –

+0

@Darin雅如果复选框被选中,则只有选中的值被推入数组中,否则'var selected'为空或者空。这是我的情况。谢谢。 –

回答

0

我不understend哪里出了问题,监守,如果我这样做:

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

我没有错误,我刚才的对象与具有空淡水河谷的属性。也许你在创建对象时做错了什么,或者我错过了一些东西。

编辑 - 如果问题是,你必须把它通过Ajax之后就可以直接跳过该参数如果为null,然后检查参数存在服务器端,或者你可以指定它的价值false

+0

非常感谢您的快速回复。我解决了传递value'var Selected = 0'而不是'null'的问题。使用webmethod进行asp.net和jquery之间的一场战争。非常感谢。 –

0

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