json数据  
    [{val:‘a1’,text:'付学明-信息技术'},{val:‘a1’,text:'郭校心-信息技术'}]这个是不是json格式?               $.ajax({                   url: "WebForm5.aspx",
                   success: function() {
                       alert("dd");
                   },
                   dataType:"JSON"
                
               });
这 dataType:"JSON"  为大写时。alert 才有反应。。为‘json’时居然没反应
我怀疑是我的json数据?有问题。。高手们告诉一下

解决方案 »

  1.   

    是数组,里面的数组元素是JSON
    var arr=[{val:‘a1’,text:'付学明-信息技术'},{val:‘a1’,text:'郭校心-信息技术'}]
    var json=arr[0];
      

  2.   


    你的数据当然是json格式的。dataType只是jq定义的接口而已,如果不存在json这个枚举,当然就不会触发了。
    另外,你的Json还真的有问题。
    从服务器端传过来的数据无论属性和值都必须用双引号。而你属性没有引号,值用的是单引号
      

  3.   

    他这个格式,用标准的json api也能转成json对象数组的。jq肯定也是调用了标准json api。所以应该不是问题的根源
      

  4.   

    可是我监视 了一下变量arr[0]是“[”。。这是为什么。。高手
      

  5.   

    更正一下。这不是json。再一次强调一下
    json的key一定要用引号引起来。
    [{'val':‘a1’,'text':'付学明-信息技术'},{'val':‘a1’,'text':'郭校心-信息技术'}]别说我抬杠,看看jQuery新的版本对json数据的严格化就知道我为何强调了
      

  6.   

     var json=[{"val":"a1","text":"付学明-信息技术"},{"val":"a1","text":"郭校心-信息技术"}]  这样的数据 json[0]="[" 怎么还是等于他。。我的数据哪还有问题。。这个问题。一个小时了。郁闷。。  
      

  7.   

    问题是还 dataType:"json"  换成小写。。就OK了。
      

  8.   

    1.检查浏览器缓存是否没有清空
    2.检查json字符中的特殊字符是否都是半角
      

  9.   

    1楼作废,是我看错了,汗~~var s="[{val:'a1',text:'付学明-信息技术'},{val:'a1',text:'郭校心-信息技术'}]"
    var json=eval(s);
    s='';
    for(var i=0;i<json.length;i++){
      s+=json[i].val+"="+json[i].text+"\n"
    }
    alert(s)