2014-02-26 87 views
0

我的多选选项会自动生成如下复选框的名称:name="multiselect_categorySelect。我想这样自动生成:name="multiselect_categorySelect[]与'[]'。使用im从this site如何使用jQuery UI MultiSelect Widget获取多个复选框值?

我的代码多选是:

<select multiple="multiple" id ="categorySelect" name = "category" >  
<option values ="1">Category 1 </option> 
<option values ="2">Category 2 </option> 
<option values ="3">Category 3 </option> 
</select> 
<script type="text/javascript"> 
    $("#categorySelect").multiselect({ 
        header: false 

    }); 
</script> 

我可以在多选什么产生正如我所提到的复选框的名字吗?

+0

我没有写它,但所有来自multiselect的js和css都包含在内! – Chester

回答

1

至于有一个为你不得不修改源的选项。在线路165

html += '<input id="' + inputID + '" name="multiselect_' + id + '" type="' + (o.multiple ? "checkbox" : "radio") + '" value="' + value + '" title="' + title + '"'; 

变化

name="multiselect_' + id + '" 

name="multiselect_' + id + '[]" 

或者,如果你不想触及源,使用控件创建事件:

create: function() { 
    var $widget = $(this).multiselect("widget"); 
    var $inputs = $widget.find(".ui-multiselect-checkboxes input:checkbox"); 
    var newName = $inputs.first().attr("name") + "[]"; 
    $inputs.attr("name", newName); 
} 

看这个小提琴:http://jsfiddle.net/akhyp/982/

0

这是一个不太好回答,但它的工作原理:

$(" label input").each(function(){ 
      var x = $(this).attr("name",$(this).attr("name")+"[]"); 
}); 
相关问题