我有两个MultiSelect列表(AllProductList和SelectedProductList),AllProductList包含特定类别的所有产品,我使用JQuery从AllProductList向SelectedProductList添加/克隆选项。
我显然只希望在SelectedProductList中发布值,而不管是否 他们是否被选中。
我只在SelectedProductList周围包装了表单标签,现在需要一些方法来发布 无论是否选中,都包含其中的所有选项值。
答案 0 :(得分:2)
你可以编写一些javascript来填充隐藏的表单元素,其中包含select中的所有值,如下所示,并且在服务器端只使用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>
显然,上面的内容依赖于jQuery,你的表单的id为myForm,你的multiselect的id为mySelect:)
编辑:
注意1:这只保存选项的值,而不保存选择的标签(也可以采用类似的方法来保存这些标签)。请牢记这一点
注意2:请注意这些值是否包含任何逗号,因为这会使您的输入无效(如果没有以某种方式转义,或者如果不使用其他分隔符)
答案 1 :(得分:1)
我无法评论,所以我想我必须回答???
波格丹的回答需要+ =
hiddenValues += $(this).val() + ",";
否则你只得到1 ......