easyUIのcombboboxドロップダウンボックスが複数選択されている場合、バックグラウンドでドロップダウンボックスの値を取得する問題について

2520 ワード


easyUIのcomboboxを使用する場合、パラメータにmultiple:trueが設定されている場合、ドロップダウンボックスは複数選択できます.
jsコード
$('#cc').combobox({
		 panelHeight:'auto',
         multiple:true,
		method:'get',
		url:'web',
		dataType : "json",
		valueField:'id',
		textField:'name',
			
        });
 
  

html :


の 、 の はStringではなく、String[]の です.バックグラウンド は
String[] catalog_id = req.getParameterValues("catalog_id");

のcomboxの を する 、
$('#cc').combobox('setValues','value1','value2');

comboboxにチェックボックス を たせるには、 のコードを します.
$('#cc').combobox({
                url:'combobox_data1.json',
                method:'get',
                valueField:'id',
                textField:'text',
                panelHeight:'auto',
                multiple:true,
                formatter: function (row) {
                    var opts = $(this).combobox('options');
                    return '' + row[opts.textField]
                },
                onLoadSuccess: function () {
                    var opts = $(this).combobox('options');
                    var target = this;
                    var values = $(target).combobox('getValues');
                    $.map(values, function (value) {
                        var el = opts.finder.getEl(target, value);
                        el.find('input.combobox-checkbox')._propAttr('checked', true);
                    })
                },
                onSelect: function (row) {
                    //console.log(row);
                    var opts = $(this).combobox('options');
                    var el = opts.finder.getEl(this, row[opts.valueField]);
                    el.find('input.combobox-checkbox')._propAttr('checked', true);
                },
                onUnselect: function (row) {
                    var opts = $(this).combobox('options');
                    var el = opts.finder.getEl(this, row[opts.valueField]);
                    el.find('input.combobox-checkbox')._propAttr('checked', false);
                }
            });