easyui return 未定义 ajax
easyui return undefined from ajax
我提交表单,当我在控制台中签入它时 returns JSON 数据。但是我不能在 JSON 数据中使用对象。
$('#ff').form({
type: 'POST',
cache: false,
url: base_url + 'Api/lapor/submit',
dataType: 'json',
iframe: false,
onSubmit: function(param) {
param.id_item = sessionStorage.id_item;
param.token = sessionStorage.token;
},
onProgress: function(percent) {
$.messager.progress();
},
success: function(msg){
console.log(msg.status); //it will return undefined
$.messager.progress('close');
},
onLoadError: function(){
$.messager.alert('Error', 'Gagal', 'error');
}
});
我尝试 console.log(msg)
它 return JSON 数据
console
当您使用 console.log(msg.status);
记录 return 消息时,如果将结果写入 {message: "Data 1 telah disimpan", status: true}
那么您可以使用 msg.status
或 [=15] 调用它=]
但在您的情况下,它被记录为 {"message": "Data 1 telah disimpan", "status": true}
,因此您应该尝试使用包含的 "
来调用它,例如 msg['"status"']
或 msg["\"status\""]
var msg1 = {"message": "Data 1 telah disimpan", "status": true}
var msg2 = {'"message"': "Data 2 telah disimpan", '"status"': true}
function checkdata1() {
console.log(msg1);
alert(msg1.message);
}
function checkdata2() {
console.log(msg2);
alert(msg2['"message"'])
}
<btn onclick="checkdata1()">Check Data 1</btn>
<br/>
<btn onclick="checkdata2()">Check Data 2</btn>
Update 这是使用 console.log
登录时 msg1
和 msg2
之间的区别
更新2因为jeasyui
$.form
的return类型是一个string
,所以需要解析首先使用 JSON.parse
或 jeasyui
文档部分中找到的 JSON / javascript 对象 处理提交响应here
我提交表单,当我在控制台中签入它时 returns JSON 数据。但是我不能在 JSON 数据中使用对象。
$('#ff').form({
type: 'POST',
cache: false,
url: base_url + 'Api/lapor/submit',
dataType: 'json',
iframe: false,
onSubmit: function(param) {
param.id_item = sessionStorage.id_item;
param.token = sessionStorage.token;
},
onProgress: function(percent) {
$.messager.progress();
},
success: function(msg){
console.log(msg.status); //it will return undefined
$.messager.progress('close');
},
onLoadError: function(){
$.messager.alert('Error', 'Gagal', 'error');
}
});
我尝试 console.log(msg)
它 return JSON 数据
console
当您使用 console.log(msg.status);
记录 return 消息时,如果将结果写入 {message: "Data 1 telah disimpan", status: true}
那么您可以使用 msg.status
或 [=15] 调用它=]
但在您的情况下,它被记录为 {"message": "Data 1 telah disimpan", "status": true}
,因此您应该尝试使用包含的 "
来调用它,例如 msg['"status"']
或 msg["\"status\""]
var msg1 = {"message": "Data 1 telah disimpan", "status": true}
var msg2 = {'"message"': "Data 2 telah disimpan", '"status"': true}
function checkdata1() {
console.log(msg1);
alert(msg1.message);
}
function checkdata2() {
console.log(msg2);
alert(msg2['"message"'])
}
<btn onclick="checkdata1()">Check Data 1</btn>
<br/>
<btn onclick="checkdata2()">Check Data 2</btn>
Update 这是使用 console.log
msg1
和 msg2
之间的区别
更新2因为jeasyui
$.form
的return类型是一个string
,所以需要解析首先使用 JSON.parse
或 jeasyui
文档部分中找到的 JSON / javascript 对象 处理提交响应here