【问题标题】:asp.net Jquery.ajax retaining JSON.Parse unexpected character errorasp.net Jquery.ajax 保留 JSON.Parse 意外字符错误
【发布时间】:2013-12-02 20:05:57
【问题描述】:

有很多基于这个问题的问题,我已经阅读了几乎每一个问题,但他们的解决方案似乎都不起作用。
我已经尝试更改几乎所有可能的数据语法,最后我删除了给定的数据属性,但这仍然没有解决我的问题!
Í 使用 jquery.Ajax 的经验并不丰富,但在我看来一切都是正确的!
这种完全相同的情况似乎更频繁地发生,导致错误的代码位于 1.8 版以上的 Jquery 库中。
所以我已经将我的版本 1.9 更改为 1.5.2,它应该可以工作,但它仍然抛出这个语法错误! :(

JAVASCRIPT 代码:

function ProcessLoginRequest() {
            try 
            {
                var pw = document.getElementById('<%= I_Password.ClientID %>').value;
                var un = document.getElementById('<%= I_Username.ClientID %>').value;                
                var enc = CryptoJS.SHA256(pw);

                $.ajax({
                    type: "POST",
                    url: "~/User/Login.aspx/AJAX_LoginProcedure",
                    data: "{}",
                    dataType: "json",
                    contentType: "application/json; charset=utf-8",
                    success: function (data) {
                        alert(data.d);
                    }
                }).done(function () {
                    alert("done");
                });
            } catch (e) {
                alert(e);
            }
        }

ASP.NET C# 代码:

[System.Web.Services.WebMethod]
        //[System.Web.Script.Services.ScriptMethod(UseHttpGet = true, ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]
        public static string AJAX_LoginProcedure()
        {
            string Username = string.Empty; 
            string Password = string.Empty;
            string SQL_ConnectString = ConfigurationManager.ConnectionStrings["DBString"].ConnectionString;
            string SQL_PW = WWLTemplate.SQL_FUNC.GET("Password", "Username", "=", Password, "DBName", SQL_ConnectString).ToString();
            if (Password == SQL_PW)
            {
                return true.ToString();
            }
            else
            {

                return false.ToString();
            }
        }

数据语法:

  1. [{用户名:un,密码:enc}]
  2. [{“用户名”:un,“密码”:enc}]
  3. "{'用户名':'" + un +",'密码':'" + enc + "'}" 我还尝试了 JSON.stringify() 与其中的每一个 + 更多选项。 我真的没办法了,你们能发现我可能犯的语法错误吗?
    我已经阅读了文档并尝试了一大堆不同的方法,但我就是找不到可行的方法! :(

    感谢您的宝贵时间!
    -R

编辑: 问题出在 javascript 方面,它不断抛出 SyntaxError: JSON.parse: unexpected character 错误。即使代码是空白的。

【问题讨论】:

  • 在浏览器上打开开发者工具/Firebug,然后在网络选项卡中查看响应 ajax 调用。在您的问题中包含回复。

标签: javascript jquery asp.net ajax json


【解决方案1】:

尝试使用

     if (Password == SQL_PW)
        {
             context.Response.Write("true");
        }
        else
        {

             context.Response.Write("false");
        }
   return;

【讨论】:

    猜你喜欢
    • 2012-07-18
    • 2012-01-21
    • 2014-04-17
    • 1970-01-01
    • 2013-06-02
    • 2012-03-30
    • 2014-09-08
    相关资源
    最近更新 更多