javascript - Sending input array with jQuery and Ajax - Stack Overflow

I am trying to send a form field array through my form but am unsuccessfull :-I have a hidden field, g

I am trying to send a form field array through my form but am unsuccessfull :-/

I have a hidden field, generated from jQuery, looking like this:

$(".imghidden").html('<input type="hidden" name="pimage[]"  value="'+data.imgname+'">');

This is generated for each file uploaded to this post. When I then submit the form I do not get anything through the "pimage" form submission. All other fields return a value?!? Below is the jQuery Ajax I am trying to use:

var $form = $( this ),
    category = $form.find( "select[name='category']" ).val(),
    newcategory = $form.find( "input[name='newcategory']" ).val(),
    title = $form.find( "input[name='title']" ).val(),
    subtitle = $form.find( "input[name='subtitle']" ).val(),
    content = $form.find( "textarea[name='content']" ).val(),
    pimage = $form.find( "input[name='pimage']" ).val()

// Send the data using post
var posting = $.post( "data/mod/projects.php", { createnew: true, cat: category, newcat: newcategory, ti: title, sti: subtitle, con: content, pimg: pimage  });

What am I doing wrong. Any help is appreciated.

Thanks in advance :-)

I am trying to send a form field array through my form but am unsuccessfull :-/

I have a hidden field, generated from jQuery, looking like this:

$(".imghidden").html('<input type="hidden" name="pimage[]"  value="'+data.imgname+'">');

This is generated for each file uploaded to this post. When I then submit the form I do not get anything through the "pimage" form submission. All other fields return a value?!? Below is the jQuery Ajax I am trying to use:

var $form = $( this ),
    category = $form.find( "select[name='category']" ).val(),
    newcategory = $form.find( "input[name='newcategory']" ).val(),
    title = $form.find( "input[name='title']" ).val(),
    subtitle = $form.find( "input[name='subtitle']" ).val(),
    content = $form.find( "textarea[name='content']" ).val(),
    pimage = $form.find( "input[name='pimage']" ).val()

// Send the data using post
var posting = $.post( "data/mod/projects.php", { createnew: true, cat: category, newcat: newcategory, ti: title, sti: subtitle, con: content, pimg: pimage  });

What am I doing wrong. Any help is appreciated.

Thanks in advance :-)

Share Improve this question asked Mar 7, 2015 at 11:25 MansaMansa 2,32511 gold badges39 silver badges69 bronze badges 3
  • Is the .imghidden element that you append the hidden element to within the $form? If you do console.log($form.find("input[name='pimage']").length) what value do you get? – Rory McCrossan Commented Mar 7, 2015 at 11:27
  • try $form.find( "input[name^='pimage']" ).val() – lshettyl Commented Mar 7, 2015 at 11:29
  • 2 You would have better to serialize the FORM instead of building FORM data manually: api.jquery./serialize – A. Wolff Commented Mar 7, 2015 at 11:30
Add a ment  | 

2 Answers 2

Reset to default 5

Your jQuery selector is looking for an input with name pimage... which doesn't exist. I haven't tested it, but it looks like your jQuery selector should be looking for pimage[] instead.

e.g.

pimage = $form.find( "input[name='pimage[]']" ).val()

You are trying to find a selector that doesn't exist. Try

$form.find( "input[name^='pimage']" ).val()

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744963056a4603503.html

相关推荐

  • javascript - Sending input array with jQuery and Ajax - Stack Overflow

    I am trying to send a form field array through my form but am unsuccessfull :-I have a hidden field, g

    1天前
    60

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信