jQuery MiniUI

标题: 请问autocomplete可以在获得焦点的时候触发查询吗? [打印本页]

作者: ihuuhz    时间: 2016-6-20 08:43:59     标题: 请问autocomplete可以在获得焦点的时候触发查询吗?

我在autocomplete里面添加了onfocus事件,触发的方法如下:   function selectMy() {
            var url = "ECIQ_Handler.ashx?method=limit";
            var a = mini.get('ENTQUALIFTYPECODE');
            a.load(url);
            a.doValueChanged();
        }

没有触发查询,请问能实现吗?

作者: felt    时间: 2016-6-20 09:34:16

动态设置url的方法是mini.get(id).setUrl(url)
dovaluechanged和查询没什么关系
作者: ihuuhz    时间: 2016-6-20 09:40:50

felt 发表于 2016-6-20 09:34
动态设置url的方法是mini.get(id).setUrl(url)
dovaluechanged和查询没什么关系

我设置的onFocus事件,代码是
function selectMy() {
            var url = "ECIQ_Handler.ashx?method=limit";
           // var a = mini.get('ENTQUALIFTYPECODE');
            mini.get("ENTQUALIFTYPECODE").setUrl(url);
            alert("");
        }
没有触发查询啊
作者: felt    时间: 2016-6-20 10:28:40

ihuuhz 发表于 2016-6-20 09:40
我设置的onFocus事件,代码是
function selectMy() {
            var url = "ECIQ_Handler.ashx?method= ...

onfocus是输入框获取焦点时的触发事件
我看不出来你的代码有什么联系
作者: ihuuhz    时间: 2016-6-20 10:31:06

felt 发表于 2016-6-20 10:28
onfocus是输入框获取焦点时的触发事件
我看不出来你的代码有什么联系

我就是想获得焦点的时候去查询啊,而不是输入值后才开始查询,
你上面的回复说 mini.get("ENTQUALIFTYPECODE").setUrl(url); 这个可以主动查询,我没有看到代码去查询
作者: felt    时间: 2016-6-20 10:42:18

ihuuhz 发表于 2016-6-20 10:31
我就是想获得焦点的时候去查询啊,而不是输入值后才开始查询,
你上面的回复说 mini.get("ENTQUALIFTYPECO ...

这控件就是输入才去查询的 ,这是基本的使用需求,不能获取焦点就去查询
作者: luoweiwei    时间: 2016-6-20 10:43:51

felt 发表于 2016-6-20 10:42
这控件就是输入才去查询的 ,这是基本的使用需求,不能获取焦点就去查询 ...

我的项目现在客户也有这需求鼠标一点就弹出下拉数据,同样也可以输入。
作者: luoweiwei    时间: 2016-6-20 10:44:52

luoweiwei 发表于 2016-6-20 10:43
我的项目现在客户也有这需求鼠标一点就弹出下拉数据,同样也可以输入。 ...

盼提供解决方法。
作者: felt    时间: 2016-6-20 11:16:24

luoweiwei 发表于 2016-6-20 10:44
盼提供解决方法。

onfocus事件里调用mini.get(id).doQuery()
作者: ihuuhz    时间: 2016-6-20 14:07:16

felt 发表于 2016-6-20 11:16
onfocus事件里调用mini.get(id).doQuery()

谢谢,为什么我查了API 没有看到这个方法?
作者: felt    时间: 2016-6-20 14:33:09

ihuuhz 发表于 2016-6-20 14:07
谢谢,为什么我查了API 没有看到这个方法?

不常用的API没开放出来
作者: ihuuhz    时间: 2016-6-20 14:41:09

felt 发表于 2016-6-20 11:16
onfocus事件里调用mini.get(id).doQuery()

这个方法有个BUG,虽然实现了获得焦点立即查询,但是当查询好了以后,他又会再次查询一次
作者: ihuuhz    时间: 2016-6-20 14:42:16

felt 发表于 2016-6-20 14:33
不常用的API没开放出来

当我选取好值以后,控件再次获得焦点,又查询了一次。。。。。
作者: ihuuhz    时间: 2016-6-20 14:53:44

felt 发表于 2016-6-20 14:33
不常用的API没开放出来

搞定了,需要加个判断
作者: felt    时间: 2016-6-20 15:08:10

ihuuhz 发表于 2016-6-20 14:53
搞定了,需要加个判断

这是因为你监听的是focus事件,查询结束之后又定位到输入框上,又一次触发了focus
作者: luoweiwei    时间: 2016-6-20 15:24:18

ihuuhz 发表于 2016-6-20 14:53
搞定了,需要加个判断

加了个什么判断?
作者: luoweiwei    时间: 2016-6-20 15:28:19

luoweiwei 发表于 2016-6-20 15:24
加了个什么判断?

if(this.value==""){执行doquery?}
作者: ihuuhz    时间: 2016-6-20 17:00:44

luoweiwei 发表于 2016-6-20 15:28
if(this.value==""){执行doquery?}

是的,判断为空才执行




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