weixin_33691700 2016-03-14 06:11 采纳率: 0%
浏览 40

AJAX发布多个数组

I have 2 input fields like so

<input type="text" name="typeDetails[games]"/>
<input type="text" name="typeDetails[art]"/>

I want to submit via AJAX, but I'm unsure how to exactly send this data. I know in my controller that I can validate the typeDetails array like typeDetails.games or typeDetails.art, but I'm unsure how to send it.

Here's what my JS looks like currently.

var data = { 'typeDetails[]' : []};

$("input[name='typeDetails[games]']").each(function() {
    data['typeDetails[games]'].push($(this).val());
}); 

$("input[name='typeDetails[art]']").each(function() {
    data['typeDetails[art]'].push($(this).val());
});

The error I'm getting is "Cannot read property 'push' of undefined".

Thanks!

  • 写回答

2条回答 默认 最新

  • weixin_33691598 2016-03-14 08:27
    关注

    'typeDetails[games]' and 'typeDetails[art]' are not the keys of data.

    Declare data like this

    var data = { 'typeDetails[games]' : [],  'typeDetails[art]' : []};
    
    评论

报告相同问题?