使用JSON.stringify和json_decode从多维数组中获取值

时间:2016-07-16 23:20:48

标签: json ajax wordpress multidimensional-array stringify

我将使用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' );

第一个控制台日志的结果就像这样

consolelog1

,第二个控制台日志的结果就像这样

consolelog2

但是当我从第三个控制台日志检查结果时什么都没有。而且我不知道如何在没有sendback到javascript的情况下在php中检查我的数组。我不知道假的在哪里

0 个答案:

没有答案