;;我有一个表单,允许用户动态添加新的表单输入行。每次用户创建新行。输入作为数组添加:
$(document).ready(function() {
var currentItem = 1;
$('#addnew').click(function(){
currentItem++;
$('#items').val(currentItem);
var strToAdd = '<tr><td>Year</td><td>:</td><td><select name="year[]" ><option value="2012">2012</option><option value="2011">2011</option></select></td><td width="7%">Week</td><td width="3%">:</td><td width="17%"><select name="week[]" ><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option></select></td><td width="8%"> </td><td colspan="2"> </td></tr><tr><td>Actual</td><td>:</td><td width="17%"><input name="actual[]" type="text" /></td><td width="7%">Max</td> <td width="3%">:</td></tr>';
$('#data').append(strToAdd);
});
});
检查Fiddle
我遇到的问题是我提交表单时。我无法通过我的php捕获任何数据:
$("#upload").validate({
submitHandler: function (form) {
$.ajax({
url: '<?php echo base_url(); ?>/ajax_upload',
type: 'POST',
data: $(form).serialize(),
success: function(data) {
if(data)
{
alert("success");
} else {
alert("error");
}
},
error: function(data){
alert("error");
},
cache: false,
contentType: false,
processData: false
});
return false;
}
});
执行此代码时:
var_dump($_POST['year']);
或echo count($_POST['year'])
我收到以下错误:Message: Undefined index: year
在我的firebug控制台视图下。 POST我看到数据正在发布
year%5B%5D=2012&week%5B%5D=1&actual%5B%5D=test&year%5B%5D=2011&week%5B%5D=2&actual%5B%5D=test+2&items
=3&sub=Submit+values
但它似乎仍未捕获。
任何帮助将不胜感激