我有一个函数可以让我为表单中的循环保存droped项目。这是sample,有两个进程。我想要做的是在提交表格后在下一页打印保存的值。
所以主要的想法是,在第一个表单上选择进程数后,用户进入第二个表单,在那里他可以为循环中的每一行删除项目。然后他可以通过按下保存按钮来提交它,系统应该为每个过程打印保存的值。 我找到了一种方法来打破每个进程的数组:
var LISTOBJ = {
saveList: function() {
$(".proc").each(function() {
var listCSV = [];
$(this).find("li").each(function(){
listCSV.push($(this).text());
});
$("#output").append("<p>"+listCSV.join(", ")+"</p>");
//$(".hiddenListInput").val(listCSV);
console.debug(listCSV);
});
}
}
它工作正常,它会打印每个进程的已保存值列表,但是当我尝试使用$(".hiddenListInput").val(listCSV);
提交表单后在新页面上打印它时,它只显示上次保存的值。
这是我的表格:
<form class="formcss" method="POST" action="test2.php">
<?php
$len=2;
for($y=0;$y<$len;$y++)
{
?>
<div class='proc'>
<label>Process:</label>
<span> </span>
<br />
<div class="leader">
<label>Leader:</label>
<div class="ui-widget-content">
<div class="projLeader">
<ol>
<li class="placeholder" name="leader[]"></li>
<input type="hidden" name="leader[]" class="hiddenListInput" />
</ol>
</div>
</div>
</div>
</div>
<?php
}
?>
<div class="row">
<input type="submit" id="savebutton" style="margin-top:25px;" name="submit" class="button" value="Save" onclick="userSubmitted = true;" />
</div>
<div id="output"></div>
</form>
和test2.php我要打印保存的数组:
$procleader=$_POST['leader'];
print_r ($procleader);
答案 0 :(得分:0)
好的,我在函数中添加了隐藏的输入,它帮助了我。这是我做的:
var LISTOBJ = {
saveList: function() {
$(".proc").each(function() {
var listCSV = [];
$(this).find("li").each(function(){
listCSV.push($(this).text());
});
var values = '"'+listCSV.join('","')+'"';
$(".procChecker").append("<input type='hidden' name='prodstuff[]' value='+values+' />");
$("#output").append("<p>"+values+"</p>");
console.debug(listCSV);
});
}
}