jQuery MiniUI

标题: input上的combobox怎么全选? [打印本页]

作者: asd1122    时间: 2019-3-14 15:50:34     标题: input上的combobox怎么全选?

input标签上用class="mini-combobox",这种方式没有全选的模式嘛?我看了在线例子http://www.miniui.com/demo/index.html#src=combobox/combobox.html,是在div标签上用class="mini-combobox"的方式。

作者: dforce    时间: 2019-3-14 16:19:11

什么html标签生成控件都一样的,html标签只是占位的,解析之后的结构是一样的。
只是div标签有后面的闭合</div>,可以把多列包裹在里面。
作者: asd1122    时间: 2019-3-14 16:27:18

dforce 发表于 2019-3-14 16:19
什么html标签生成控件都一样的,html标签只是占位的,解析之后的结构是一样的。
只是div标签有后面的闭合, ...

那input的标签是怎么添加呢?input标签上方加上<div property="columns"><div header="ID" field="id"></div><div header="国家" field="text"></div></div>这些内容就可以了?
作者: asd1122    时间: 2019-3-14 16:39:38

dforce 发表于 2019-3-14 16:19
什么html标签生成控件都一样的,html标签只是占位的,解析之后的结构是一样的。
只是div标签有后面的闭合, ...

我开启了multiSelect属性,关键是没有一个类似“全选”的复选框,有全选效果,只能一个个去勾选,是我还少配置了什么属性么?
作者: dforce    时间: 2019-3-14 17:10:19

asd1122 发表于 2019-3-14 16:39
我开启了multiSelect属性,关键是没有一个类似“全选”的复选框,有全选效果,只能一个个去勾选,是我还 ...

input没闭合标签,包不住后面的列,所以请使用div标签。
多列的情况下,设置多选才有全选。
作者: asd1122    时间: 2019-3-14 17:37:04

dforce 发表于 2019-3-14 17:10
input没闭合标签,包不住后面的列,所以请使用div标签。
多列的情况下,设置多选才有全选。 ...

好吧,还有一个问题,就是combobox里面有没有取消项勾选的方法?我在itemclick事件中触发,通过setValue(),并不能马上在下拉框里看到勾选被取消的效果,有没有办法立即取消某些项的勾选?
作者: asd1122    时间: 2019-3-14 17:50:40

本帖最后由 asd1122 于 2019-3-14 18:15 编辑
dforce 发表于 2019-3-14 17:10
input没闭合标签,包不住后面的列,所以请使用div标签。
多列的情况下,设置多选才有全选。 ...

select(number)只能选择一个项嘛?我试着循环去选,只有最后一个被勾选上了?怎么样选择多个?
作者: asd1122    时间: 2019-3-15 09:24:00

怎么用方法多选啊,用select(number)为啥只能选择一个呢?
作者: dforce    时间: 2019-3-15 09:34:39

asd1122 发表于 2019-3-14 17:50
select(number)只能选择一个项嘛?我试着循环去选,只有最后一个被勾选上了?怎么样选择多个? ...

select方法是选择一个,选择多个可以使用selects方法,但是这方法接受的参数是项,不是序号了。
var items = combo.getData();
    combo.selects(items);
作者: asd1122    时间: 2019-3-15 09:42:19

dforce 发表于 2019-3-15 09:34
select方法是选择一个,选择多个可以使用selects方法,但是这方法接受的参数是项,不是序号了。
var item ...

我试了这个方法,为什么不能像select,能在下拉框里立即看到勾选的效果?确实把值全选上去了,但是需要控件失去焦点,再点开下拉框,才能看到全选的效果额
作者: felt    时间: 2019-3-15 10:42:15

asd1122 发表于 2019-3-15 09:42
我试了这个方法,为什么不能像select,能在下拉框里立即看到勾选的效果?确实把值全选上去了,但是需要控 ...

你是在什么时候调用的这方法?难道是itemclick事件里面?
是需要实现什么样的效果?
作者: asd1122    时间: 2019-3-15 14:41:56

felt 发表于 2019-3-15 10:42
你是在什么时候调用的这方法?难道是itemclick事件里面?
是需要实现什么样的效果? ...

是的,是在itemclick里写的。因为我是想在input标签上去模拟全选效果,但是试了效果都不好,只有想办法重写页面上的控件了
作者: felt    时间: 2019-3-15 17:54:58

asd1122 发表于 2019-3-15 14:41
是的,是在itemclick里写的。因为我是想在input标签上去模拟全选效果,但是试了效果都不好,只有想办法重 ...

本地测试未发现这样的问题

<div id="combobox2" class="mini-combobox" style="width:250px;"  popupWidth="400" textField="text" valueField="id"
    url="../data/countrys.txt" multiSelect="true"  showClose="true" onitemClick="onItemClick">     
    <div property="columns">
        <div header="ID" field="id"></div>
        <div header="国家" field="text"></div>
    </div>
</div>

function onItemClick(e) {
            var items = e.sender.getData();
            var selects = [];
            $(items).each(function (i, item) {
                if (item.id == "cn" || item.id == "jp") {
                    selects.push(item);
                }
            })
            e.sender.selects(selects);
        }






欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2