使用javascript访问json
是的,这是“使用javascript访问json”的另一个例子。放纵我吧,我读了其余的答案,事件,没有帮助 我有以下代码使用javascript访问json,javascript,jquery,json,Javascript,Jquery,Json,是的,这是“使用javascript访问json”的另一个例子。放纵我吧,我读了其余的答案,事件,没有帮助 我有以下代码 var display_order_message = function(res, status) { alert(res.status+' '+res.message+' '+res["message"]); }; $("#ticketform").submit( function(event) { data = {}; var args = {
var display_order_message = function(res, status) {
alert(res.status+' '+res.message+' '+res["message"]);
};
$("#ticketform").submit( function(event) {
data = {};
var args = {
type:"POST",
url:"someurldoesntmatterhere",
data:data,
dataType:"json",
success: somefunctionsheredontmattereither,
complete: display_order_message
};
$.ajax(args);
event.preventDefault();
});
现在,使用Firebug,我可以看到返回的json是
{"status": 200, "qa": [], "message": "order canceled", "qb": []}
上面代码中的警报将打印出来
200 undefined undefined
那么,为什么我可以访问.status而不能访问.message或[“message”]?如何访问该消息?非常简单
var obj = {"status": 200, "qa": [], "message": "order canceled", "qb": []}
var message = obj.message;
var message2 = obj['message'];
这两种方法都很简单
var obj = {"status": 200, "qa": [], "message": "order canceled", "qb": []}
var message = obj.message;
var message2 = obj['message'];
这两种方法都很简单
var obj = {"status": 200, "qa": [], "message": "order canceled", "qb": []}
var message = obj.message;
var message2 = obj['message'];
这两种方法都很简单
var obj = {"status": 200, "qa": [], "message": "order canceled", "qb": []}
var message = obj.message;
var message2 = obj['message'];
这两项工作都在
success
arg中显示命令消息,而不是完成
目前,您的res
变量是一个jqXHR
,它也有一个状态
子变量
请参见在success
arg中放置display\u order\u消息,而不是complete
目前,您的res
变量是一个jqXHR
,它也有一个状态
子变量
请参见在success
arg中放置display\u order\u消息,而不是complete
目前,您的res
变量是一个jqXHR
,它也有一个状态
子变量
请参见在success
arg中放置display\u order\u消息,而不是complete
目前,您的res
变量是一个jqXHR
,它也有一个状态
子变量
请参见展开?如果var message=obj.message;有效,为什么不发出警报(obj.message);?对不起,我忘记了这个var result=eval(“(“+res+”)”)eval
是为古代浏览器服务时使用的工具。如果您使用的是现代浏览器,则使用的是JSON.parse
。如果您正在使用jQuery(这里就是这样),那么就让jQuery为您做吧!正如Smoky的回答中所指出的,res
无论如何都不是一个响应数据字符串,因此这不起作用。请展开?如果var message=obj.message;有效,为什么不发出警报(obj.message);?对不起,我忘记了这个var result=eval(“(“+res+”)”)eval
是为古代浏览器服务时使用的工具。如果您使用的是现代浏览器,则使用的是JSON.parse
。如果您正在使用jQuery(这里就是这样),那么就让jQuery为您做吧!正如Smoky的回答中所指出的,res
无论如何都不是一个响应数据字符串,因此这不起作用。请展开?如果var message=obj.message;有效,为什么不发出警报(obj.message);?对不起,我忘记了这个var result=eval(“(“+res+”)”)eval
是为古代浏览器服务时使用的工具。如果您使用的是现代浏览器,则使用的是JSON.parse
。如果您正在使用jQuery(这里就是这样),那么就让jQuery为您做吧!正如Smoky的回答中所指出的,res
无论如何都不是一个响应数据字符串,因此这不起作用。请展开?如果var message=obj.message;有效,为什么不发出警报(obj.message);?对不起,我忘记了这个var result=eval(“(“+res+”)”)eval
是为古代浏览器服务时使用的工具。如果您使用的是现代浏览器,则使用的是JSON.parse
。如果您正在使用jQuery(这里就是这样),那么就让jQuery为您做吧!正如Smoky的回答中指出的,res
无论如何都不是一个响应数据字符串,所以这不起作用。是的,就是这样。所以我必须在success和error中包含display_order_消息?或者更好,如果我得到一个400,它回复一个json,它也有一个我想要显示的错误消息,那该怎么办?那我该怎么办?你应该为每一个都有一个回调函数。它们没有相同的参数。您应该使用成功回调来处理数据和应用程序层错误(res.status
)。错误回调应该用于处理jQuery层(或更低层)错误。是的,就是这样。所以我必须在success和error中包含display_order_消息?或者更好,如果我得到一个400,它回复一个json,它也有一个我想要显示的错误消息,那该怎么办?那我该怎么办?你应该为每一个都有一个回调函数。它们没有相同的参数。您应该使用成功回调来处理数据和应用程序层错误(res.status
)。错误回调应该用于处理jQuery层(或更低层)错误。是的,就是这样。所以我必须在success和error中包含display_order_消息?或者更好,如果我得到一个400,它回复一个json,它也有一个我想要显示的错误消息,那该怎么办?那我该怎么办?你应该为每一个都有一个回调函数。它们没有相同的参数。您应该使用成功回调来处理数据和应用程序层错误(res.status
)。错误回调应该用于处理jQuery层(或更低层)错误。是的,就是这样。所以我必须在success和error中包含display_order_消息?或者更好,如果我得到一个400,它回复一个json,它也有一个我想要显示的错误消息,那该怎么办?那我该怎么办?你应该为每一个都有一个回调函数。它们没有相同的参数。您应该使用成功回调来处理数据和应用程序层错误(res.status
)。错误回调应该用于处理jQuery层(或更低层)错误。