我将使用JSON.stringify和json_decode从jquery ajax读取我的多维数组,但我的代码不起作用,有人可以帮助我吗?
这是我的ajax功能
$(document).on('click', '#save-module', function() {
var input_form = {};
$('#module-option-form').find('input').each(function() {
var input_name = $(this).attr('name');
var input_value;
if ($(this).is(":checkbox")) {
if ($(this).prop("checked")) {
input_value = 1;
} else {
input_value = 0;
}
} else {
input_value = $(this).val();
}
input_form.data.push({
name: input_name,
value: input_value
});
});
$.ajax({
url: ajaxUrl,
type: "POST",
data: {
action: "save_module_input",
input_form: JSON.stringify(input_form)
},
success: function(result) {
var input_form_stringify = JSON.stringify(input_form);
console.log(input);//console log 1
console.log(input_form_stringify);//console log 2
console.log(result);//console log 3
}
});
});
这是我的PHP代码
function save_module_input(){
$input_form = json_decode($_POST['input_form']);
echo $input_form->data[0]->name;
echo $input_form->data[0]->value;
exit();
}
add_action( 'wp_ajax_nopriv_save_module_input', 'save_module_input' );
add_action( 'wp_ajax_save_module_input', 'save_module_input' );
第一个控制台日志的结果就像这样
,第二个控制台日志的结果就像这样
但是当我从第三个控制台日志检查结果时什么都没有。而且我不知道如何在没有sendback到javascript的情况下在php中检查我的数组。我不知道假的在哪里