Las*_*eak 6 html forms asp.net-mvc jquery
我有两个MultiSelect列表(AllProductList和SelectedProductList),AllProductList包含特定类别的所有产品,我使用JQuery从AllProductList添加/克隆选项到SelectedProductList.
我显然只希望在SelectedProductList中发布值,而不管它们是否被选中.
我只在SelectedProductList周围包装了表单标签,现在需要一些方法在其中发布所有选项值,无论是否选中.
您可以编写一些JavaScript,用选择中的所有值填充隐藏的表单元素,如下所示,并且在服务器端只需使用explode(",",$_POST["allValues"]) 来获取所有选项
<script>
var hiddenValues = "";
$(document).ready(function(){
$("#mySelect option").each(function(){
hiddenValues = $(this).val() + ",";
})//end each
$("#myForm").append("<input type='hidden' name='allValues' value='"+hiddenValues+"'>")
})
</script>
Run Code Online (Sandbox Code Playgroud)
显然,上面的内容依赖于 jQuery,并且您的表单具有 myForm 的 id,并且您的多选具有 mySelect 的 id :)
编辑:
注意1:这仅保存选项的值,而不保存选择的标签(也可以采用类似的方法来保存这些标签)。请记住这一点
注意2:请注意值是否包含任何逗号,因为这将使您的输入无效(如果没有以某种方式转义,或者不使用其他分隔符)