【发布时间】:2017-09-23 13:51:22
【问题描述】:
ajax调用成功的响应是这样的json格式:
{"prize_name":"Keys 4","prize_image":"http:\/\/localhost\/web-game-w\/wp-content\/uploads\/2017\/09\/4rare.jpg"}
如何将“prize_name”和“prize_image”存储在变量中以备后用?
这里是ajax代码:
$("#ajax").click(function(e){
e.preventDefault();
var data = {
'action': 'getprize_data',
dataType: "json",
async: false
};
$.post(ajaxurl, data, function(response) {
console.log(response);
// Store vars
});
});
我还有一个问题。这个response.prize_name 将返回错误response.prize_name is undefined。
【问题讨论】:
-
在 ajax 调用之前不使用 var 声明两个变量,并且作为响应的 sson 将这些值分配给这些变量
-
@Gardezi 我如何分配这些值?我尝试了 response.prize_name 和 response.prize_image。我总是不确定。
-
你如何从服务器@Yamona返回你的ajax请求响应
-
它以 json 格式返回,看起来像这样 {"prize_name":"text","prize_image":"url"}
-
请控制台记录您的响应,如果它未定义,那么这意味着您没有从服务器正确发送值。我认为您正在使用 return 关键字来返回 JSON 响应,如果这是问题,那么请像这样返回您的 json 响应
echo json_encode([])