Ajax表单数据未与多个对象一起发送

时间:2019-02-04 05:00:09

标签: javascript jquery ajax wordpress object

我遇到了一个问题。我需要使用表单提交数据,并且以前的存储数据都在一起。当我发送cart时,数据正在正确提交,但是我的form_data显示为空。如果我使用此代码仅提交表单,则可以正常工作。如何发送两个数据?

data : form_data,
contentType: false,
cache: false,
processData:false

AJAX:

jQuery( "#chackOutBillingIfor" ).submit(function( e ) {
    e.preventDefault();
    var products = JSON.stringify(cart);
    var form_data = new FormData(this); //Creates new FormData object
    jQuery.ajax({
        url: "/wp-admin/admin-ajax.php?action=chackOut",  
        data: {productInfo:JSON.stringify(cart), json_2:JSON.stringify(form_data)},
        type: 'POST'
    })
});

1 个答案:

答案 0 :(得分:-1)

尝试此代码

var datastring = jQuery("#chackOutBillingIfor").serialize();

jQuery.ajax({
      url: "wp-admin/admin-ajax.php?action=chackOut",  
      data: {
              productInfo:JSON.stringify(cart), 
              billingInfo:datastring,
            },
      type: 'POST',
      cache: false,
});
</script>



add_action( 'wp_ajax_chackOut', 'my_ajax_foobar_handler' );

function my_ajax_foobar_handler() {
    // Make your response and echo it.

    $params = array();
    parse_str(stripslashes($_POST['billingInfo']), $params);
    print_r($params );
    // Don't forget to stop execution afterward.
    wp_die();
}