6

JSONオブジェクトを取得すると、次のエラーが発生します。

  1. SyntaxError:Mozillaのラベルが無効です。
  2. Uncaught SyntaxError:予期しないトークン:Chromeの場合

私のJSONオブジェクトは次のような形式です。

{
   "userName" : "clevermeal835",
   "userRole" : "Participant",
   "userAccountStatus" : "Active"
}

コード:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="Scripts/jquery-min.js"></script>
<script src="Scripts/jquery_validate.js"></script>
<script>
$(document).ready(function() {
    loadLatestTweet();  
});

function loadLatestTweet(){
var xhr = new XMLHttpRequest();
var uid = "clevermeal835";
var pwd = "Welcome_1";
var userType = "participant";
    var surl =      'http://localhost:8080/RESTlet_WS/MobiSignIn/{"userName":"'+uid+'","password":"'+pwd+ '","userType":"'+userType+'"}&callback=?';

    var jqxhr = $.getJSON(surl, function() {
        alert("success");
    }).success(function() { alert("second success");   }).error(function() { alert("error"); }).complete(function() { alert("complete"); });
    jqxhr.complete(function(){ alert("second complete"); });
 }
 </script>
</head>
<body>
<input id="jsonpbtn2" type="submit" value="button" />
</body>
</html>
4

3 に答える 3

3

コードをこのように見せることができます

var params = { "Username": UserNameValue,"Password": PassValue};


        $.ajax({
            type: "POST",
            url: "http://localhost:8080/RESTlet_WS/MobiSignIn/",
            contentType: 'application/json',

            data: JSON.stringify(params),
            dataType: 'json',
            async: false,
            cache: false,
            success: function (response) {


            },
            error: function (ErrorResponse) {


            }
于 2013-01-29T04:52:31.450 に答える
0

使用しているsurlでこれを試してください

var params = encodeURIComponent('{"userName":"'+uid+'","password":"'+pwd+ '","userType":"'+userType+'"}');
var surl = 'http://localhost:8080/RESTlet_WS/MobiSignIn?params='+params+'&callback='

このように使用します

于 2013-02-28T09:01:22.470 に答える
0

asmx Web サービス (.NET) を呼び出すときに、まったく同じ問題が発生しました。

次のように、戻り値を角括弧で囲むことで解決しました。

return @"[ {{ ""status"" : ""OK"", ""message"" : ""Success !!!"" }} ]";

そして、厄介な d パラメータのために、戻り変数を「評価」しました。

$.ajax({
            type: "POST",
            url: 'http://www.example.com/',
            contentType: 'application/json; charset=utf-8',
            data: '{name: "' + vName + '", target: "' + vTarget + '", phone: "' + vPhone + '", timeframe: ' + true + '}',
            dataType: 'json',
            success: function (msg) {

                jsonMsg = eval(msg.d);

                alert(jsonMsg.status);
                alert(jsonMsg.message);
            },
            error: function (xhr, msg) {
            }
        });
于 2013-11-19T14:22:27.700 に答える