firefox中没有格式错误

时间:2011-03-23 13:08:44

标签: jquery ajax servlets

我正在从服务器检索一些类似这样的数据:1:some values@2: some other@3:some more。我在客户端解析它,它适用于chrome但firefox似乎抛出此错误。

我甚至尝试将dataType设置为不起作用的文本。我搜索了类似的问题,发现这是matching。但我通过http访问它只是不同于这个线程中的问题。

编辑:

    setInterval(function(){

            if($thisUser)
                $commonURL= "checkRequest.do?user="+$thisUser ;
            else
                $commonURL= "checkRequest.do?user=null";

            $.ajax({                            
            url:$commonURL,
            contentType: "text/plain",
            dataType: "text",   
            success:function(result){
                if(result[0]=="1")
                        window.location="playGame.do";
                else if(result[0]=="2"){ 

                    result1=result.substring(1,result.indexOf("@")); 
                    resultTemp="";
                    for(i=0;i<result1.split(",").length-1;i++)
                        resultTemp += "<a href='#' class='oppRequests' id='"+result1.split(",")[i]+"'>"+result1.split(",")[i]+"</a>, ";
                    $('td#oppRequests').html(resultTemp);
                    resultTemp="";
                    $("a.oppRequests").click(function(){
                        $thisUser = $(this).html();
                        $.ajax({

                        url:"postRequest.do?confirm="+$thisUser, 
                        success:function(result){

                    }});
                    });         

                }
            }
            });

},10000);

请帮我解决这个问题:)

有人请回答:p我有正确的方法来实现我想要的但我想知道这个问题。

2 个答案:

答案 0 :(得分:3)

有一点可以解决您的问题并加速您的脚本,如果不是将您自己的数据格式解析为文本,您应该使用内置的JSON格式。只需将'datatype'参数更改为'json'即可在jQuery中支持此功能。这样您就可以使用'result'var从服务器访问结果,而无需进行任何字符串匹配。

本质上,您返回的JSON格式字符串应如下所示:

{ key1: 'some value', key2: 'some value'}

您可以使用结果[key1],结果[key2]在您的成功函数中访问它。

创建JSON服务器端非常简单,我不确定您使用的是哪种语言,但很多语言都内置了JSON编码功能。

答案 1 :(得分:1)

通过更改mimeType解决了问题!

相关问题