【问题标题】:not well-formed error in firefoxFirefox中格式不正确的错误
【发布时间】:2011-07-21 07:31:28
【问题描述】:

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

我什至尝试将 dataType 设置为 text 也不起作用。我搜索了类似的问题,发现这是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 我有正确的方法来实现我想要的,但我想知道这个问题。

【问题讨论】:

  • 能贴出jQuery源码吗?
  • 是的,您不能只向我们展示那些奇怪的“魔术字符串”格式数据——我们需要查看您的解析代码以及您用于设置 ajax 请求的代码.
  • 非常抱歉没有添加代码和延迟。

标签: jquery ajax servlets


【解决方案1】:

肯定会解决您的问题并加快您的脚本速度的一件事是,您应该使用内置的 JSON 格式,而不是将您自己的数据格式解析为文本。 jQuery 支持这一点,只需将 'datatype' 参数更改为 'json'。这将允许您使用 'result' 变量从服务器简单地访问您的结果,而无需进行任何字符串匹配。

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

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

你可以在你的成功函数中使用 result[key1], result[key2] 来访问它。

创建 JSON 服务器端很容易,我不确定您使用的是什么语言,但很多语言都内置了 JSON 编码功能。

【讨论】:

  • 谢谢 Dunhamzzz。我应该真的很愚蠢,因为没有实施这一点。我是 ajax 新手,到目前为止还没有考虑过使用 JSON。无论如何,你能告诉我代码中的问题吗?
【解决方案2】:

通过更改 mimeType 解决了问题!

【讨论】:

    猜你喜欢
    • 2016-04-08
    • 1970-01-01
    • 2011-04-28
    • 2012-04-17
    • 2014-01-13
    • 2011-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多