2

这是我的示例代码:

var postData = '{"studentId":"' + $("#hidId").val() + '"}';
$.ajax({
   type: 'POST',
   url: 'SomeService.svc/AddId',
   data: postData,
   contentType: 'application/json; charset=utf-8',
   dataType: 'json',
   success: function (msg) {
      //do something...
   }
});

我希望postData的引号保持原样(参数周围有双引号,单代码对我不起作用),但是当浏览器运行它时,所有单引号都变成双引号,双引号保持原样,它变成这样:

"{"studentId":"ST001"}"

我需要这种格式的字符串:

'{"studentId":"ST001"}'

有谁知道如何克服这个问题?

更新:自己整理出来,问题出在我提交回来的数据值上,'studentId'应该是Guid,以便与WCF服务参数类型匹配。

4

2 回答 2

1

使用转义字符 \

var postData = '{"studentId":\'' + $("#hidId").val() + '\'}';
于 2012-05-07T02:20:55.300 回答
0
var postData = {};
postData.studentId = $("#hidId").val();

...

data: JSON.stringify(postData),
于 2012-05-07T03:03:53.607 回答