在我的异步请求中,该请求会返回一个data参数,data的值为
Response: Success
Message: Authentication accepted
请问大侠,怎样经这个值保存成js的关联数组?
如:arr["Response"]=Success
arr["Message"]=Authentication accepted
Response: Success
Message: Authentication accepted
请问大侠,怎样经这个值保存成js的关联数组?
如:arr["Response"]=Success
arr["Message"]=Authentication accepted
你后台返回过来的格式写成这样(字符串格式):
var str='{
Response:'success',Message:‘Authentication accepted’
}'
var o = eval("(" + str+ ")");//转化成对象
alert(o.Response);
alert(o.Message);
var arr = new Array();
arr["Response"] = "Success";
arr["Message"] = "Authentication accepted";
alert(arr["Response"]);
alert(arr["Message"]);
怎样将data="Response: Success Message: Authentication accepted"保存成关联数组?
如:arr["Response"]=Success
arr["Message"]=Authentication accepted
只能笨方法了:
var arr=data.split(':')来解决了。结果['Response','Success Message',Authentication accepted''];
再arr[1].split(' ');结果[ 'Success','Message']
var arr=eval("(" + str+ ")");
alert(arr.Response)
alert(arr.Message)
var arr = data.match( /Response\s*:\s*(\w+)\s*Message\s*:\s*([\w ]+)/);
var o = {
Response : arr&&arr[1] ? arr[1] : "",
Message : arr&&arr[2] ? arr[2] : ""
}
alert( "Response :" + o.Response + ", Message: " + o.Message);
var str="{"+$.trim(data)+"}";
var obj=eval("("+str+")");
alert(obj.Response);这段代码我在运行时报错,说missing } after property list alert(obj.Response);
var data="[{Response: 'Success'},{Message: 'Authentication accepted'}]";//这样就是一个数组的形式了,数组存放了2个对象
var arr=eval("(" + str+ ")");
alert(arr[0].Response)
alert(arr[1].Message)