我通过$ .post()发送了一个JS对象,并且想要返回一个数组。在AJAX调用后返回PHP数组
JS
var ajaxData = {action:"createuser"}
$("input[required]").each(function(){
var attr = $(this).attr("name");
ajaxData[attr] = $(this).val();
});
$.post(
daten.ajaxurl,
ajaxData,
function(data){
alert(data[0])
}
)
PHP
//Create a User
add_action('wp_ajax_nopriv_createuser','createuser');
function createuser() {
foreach ($_POST as $key => $value) {
if(empty($value)) {
$type = "error";
$content = "$key is empty";
echo array($type,$content);
wp_die();
}
}
}
我能得到什么作为回应始终是一个字符串,所以它工作得很好,如果我回声$内容。
我读过关于你可以使用JSON并获得它自动编码,如果你添加DataTaype:“JSON”。
但我不知道如何正确地在PHP解码,寿
只是做'回声json_encode(阵列($型,$内容))'。我认为这就是你的意思。 – Andrew
@Andrew现在我得到一个对象。我认为这是一个JSON对象。我怎样才能把它变成一个数组? –
您可以使用JavaScript中的[JSON解析](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse)读取json中的信息。 – Andrew