jQuery - 序列化输入数组

时间:2013-03-08 19:25:23

标签: php jquery serialization

我在代码中遗漏了一些东西。我有一个文本框列表,用于百分比值,可能有很多输入。

// loop through unknown inputs with different values
<input name="DESIREDPERCENT[<?php echo $recid; ?>]" class="percinputbox" />
// end loop

// attach click event to this element
<span id="updatepercs">Update Percentages</span>

然后我有一个简单的span元素来发送类percinputbox

的所有输入
$(document).ready(function(){

 $('#updatepercs').click(function(){
   var allinputs = $("input.percinputbox").serialize();
   console.log(allinputs);  //DESIREDPERCENT%5B73%5D=50.00&DESIREDPERCENT%5B104%5D=50.00    

   $.ajax({
     url:'update.php',
     data:"formId=updatepercentages" + allinputs,
     success:function(response){ alert(response); } 
  }); 

});

php正在聆听$.ajax

update.php

<?php
if($_POST['formId'] == 'updatepercentages'){
  foreach( $_REQUEST['DESIREDPERCENT'] as $key ){
    echo $key;
  }
}
?>

到目前为止,我只获得一个输入值。所以我肯定在发错了。

我愿意在这里采用更好/更优化的方式。我通常使用<form>标记来提交表单,但我想知道如何使用jquery提交这些输入。

1 个答案:

答案 0 :(得分:1)

您在&formId=updatepercentages

之间缺少allinputs

data:"formId=updatepercentages&" + allinputs,

相关问题