我有一个jQuery应用程序,用户可以从输入字段向列表中添加项目。 我想在提交表单时将所有项目放在数组中,以便稍后我可以使用php操作它们。这是正确的方法吗?
jQuery的:
$("#form").submit(function(){
var items = [];
$("#items li").each(function(n){
items[n] = $(this).html();
});
$.post(
"process.php",
{items: items},
function(data){
$("#result").html(data);
});
});
PHP:
$items = $_POST["items"];
foreach($items as $item){
//Something here
}
答案 0 :(得分:13)
这个想法很合理。不太清楚的是,您的示例现在填充items
,但submit
处理程序当然会在将来的某个时刻被调用。列表项可能在那个时候发生了变化吗?
如果是这样,您需要在submit
处理程序中移动“打包项目”代码,例如:
$("#form").submit(function(){
var items = [];
$("#items li").each(function(n){
items[n] = $(this).html();
});
$.post(
"process.php",
{items: items},
function(data){
$("#result").html(data);
});
});