我使用以下内容在按钮点击时提交表单。我还需要在这篇文章中附上一个名为'selected'的数组。我不能使用ajax,因为在发布页面上会发生下载。我需要这个数组来处理要下载的文件。
我做了一些搜索并发现了这一点,但无法让它工作:
var input = $("<input>").attr({"type":"hidden","name":"selected"}).val(selected);
$('#test').append(input);
当前:
var selected = [1,2,54,56,23]; // could be anything
$('#test').submit(function(event) {
if (selected.length > 0)
{
$('#test').attr('action','/process/p_screenshots_download2.php');
$('#test').attr('type','post');
return;
}
event.preventDefault();
});
答案 0 :(得分:3)
尝试
$('#test').submit(function(event) {
$.each(selected, function(i, v){
var input = $("<input>").attr({"type":"hidden","name":"selected[]"}).val(v);
$('#test').append(input);
});
if (selected.length > 0)
{
$('#test').prop('action','/process/p_screenshots_download2.php');
$('#test').prop('method','POST');
return;
}
event.preventDefault();
});
这将在提交之前将一组隐藏的输入与数组中的值一起添加到表单中。