括号中的ExtJS - SyntaxError:missing)

时间:2009-10-29 16:49:03

标签: javascript json extjs

我正在编写一些代码来教育自己的ExtJS方式。我也是JSON的新手,所以希望这个问题很容易让你回答。我正在尝试从我编写的基本Web服务中检索一些数据,将其结果作为JSON返回(因为我是JSON的新手 - 可能会被破坏)。< / p>

我得到的错误是

  

SyntaxError:missing)in   括号

我从网络服务返回的JSON是

{
    "rows": [ 
    { 
        "id": "100000", 
        "genre_name": "Action", 
        "sort_order": "100000" 
    }, { 
        "id": "100002", 
        "genre_name": "Comedy", 
        "sort_order": "100002" 
    }, { 
        "id": "100001", 
        "genre_name": "Drama", 
        "sort_order": "100001" 
    }]
}

我的ExtJS代码如下。 loadexception回调是我从

检索上面的JSON和错误的地方
var genres = new Ext.data.Store({
    proxy: new Ext.data.HttpProxy({
        method: 'POST',
        url: 'http://localhost/extjs_training/Demo_WebService/Utility.asmx/GetGenres',
        failure: function(response, options){
            Ext.get('my_id').dom.innerHTML = 'Load failed: ' + response.status;
        }
    }),
    reader: new Ext.data.JsonReader({
        fields: ['id', 'genre_name'],
        root: 'rows'
    }),
    listeners: {
        loadexception: function (proxy, options, response, e) {
            var result = response.responseText;
            Ext.MessageBox.alert('Load failure', e + " ..... " + result);
        }
    }
});

var loadSuccess = genres.load({
    callback: function(r, options, success){
        Ext.get('my_id').dom.innerHTML = 'Load status: success=' + success;
    }
});

2 个答案:

答案 0 :(得分:4)

您上面包含的JSON是从电话中返回的实际,或者您预期的应该是什么样的?您包含的字符串看起来很干净,但看起来您也将其格式化。我不确定是否允许“id”之后的空格。不过,这可能不是什么大问题。

缺少的括号通常表示JSON中的某些内容是错误的。它可能是字符串之前/之后的额外字符。使用Firebug来检查你要回来的东西,并确保它没有任何额外的字符。

答案 1 :(得分:0)

http://www.sencha.com/forum/showthread.php?10117-Solved-missing-%29-in-parenthetical

回应两个陈述是我的理由。所以再次检查你的回声。