gpt4 book ai didi

jquery - 无法从 jQuery 正确读取 JSON 数组对象

转载 作者:行者123 更新时间:2023-12-01 08:17:11 26 4
gpt4 key购买 nike

我有点卡住了,但这一定是用户错误;从某种意义上说,以下作品。它向选择添加了新选项,但 JSON 响应中的每个字符都有一个新选项,例如

选择表单

{

[

"

N

一个

e

"

:

等等。

Firebug Lite 将 JSON 响应记录为:

{"d":"[{\"Name\":\"Monday\"},{\"Name\":\"Tuesday\"},{\"Name\":\"Wednesday\"}]"}

这是页面来源:

    <script type="text/javascript">
$(document).ready(function () {
$.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
url: '/MyWebService/MyWebService.asmx/GetDays',
dataType: 'json',
data: '{"_category":"Administration"}',
success: function (response) {
// Clear the list and add an instructional item...
$("#FormsSelect").get(0).options.length = 0;
$("#FormsSelect").get(0).options[0] = new Option("Select form", "-1");
// Add each element returned from the server...
$.each(response.d, function (index, category) {
$('#FormsSelect').append(
$('<option></option>').val(index).html(category)
);
});
},
error: function (request, error) {
alert("An error occurred: " + request.status + "\n" + request.responseText);
}
});
});
</script>

思考为什么会发生这种情况?

谢谢,亚伦。

最佳答案

注意如何响应

"[{\"Name\":\"Monday\"},{\"Name\":\"Tuesday\"},{\"Name\":\"Wednesday\"}]"

是一个字符串。如果循环遍历字符串,则会逐个字符地获取它。

如果你想将字符串解析为数组,你应该这样做,使用 jQuery parseJSON method :

var arr = $.parseJSON(response.d);
$.each(arr, function(index, category) {
// ...

另请注意,您可能想要这样做

.html(category.Name);

而不是

.html(category);

关于jquery - 无法从 jQuery 正确读取 JSON 数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9764202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com