使用已使用jQuery移动的列表框项目提交隐藏字段

时间:2016-03-25 12:54:09

标签: javascript jquery html

我有两个列表框,我可以使用jQuery移动项目。代码摘要如下:

<select multiple size="10" id="from">...</select>
<select multiple id="to" size="10" name="subitted array[]">...</select>

点击某些按钮会移动上面列表框中的项目:

<a href="javascript:moveSelected('from', 'to')">&gt;</a>...
<a href="javascript:moveSelected('to', 'from')">&lt;</a> 
<a href="javascript:moveAll('to', 'from')" href="#">&lt;&lt;</a>

jQuery函数:

function moveAll(from, to) {
    $('#'+from+' option').remove().appendTo('#'+to); 
}

function moveSelected(from, to) {
    $('#'+from+' option:selected').remove().appendTo('#'+to); 
}

我还提交了以下函数:

<form name="selection" method="post" onSubmit="return selectAll()">... </form>

function selectAll() {
    $("select option").attr("selected","selected");
}

但这只会通过POST返回右侧列表框中的值。我还想提交表单中的其他字段(例如隐藏字段)。我怎么能这样做?

非常感谢。

1 个答案:

答案 0 :(得分:0)

如果您的下拉列表在您的表单中,您需要任何特殊处理,只需提交您的表单及其中的所有字段,将发送给您的控制器。

在JS中:

$('#formId').submit();

在你的HTML中:

<button type="submit">Send</button>

这2个选项中的任何一个都适合您的问题,如果我理解您的问题,请告诉我。

此外,您应该删除此代码&#34; onSubmit =&#34; return selectAll()&#34;并保留表单正常提交工作,将所有数据发送到表单