jQuery MiniUI

 找回密码
 立即注册
查看: 2803|回复: 8
打印 上一主题 下一主题

关于控件事件先后执行顺序 [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2019-10-21 10:59:01 |只看该作者 |倒序浏览
如题,经过调试valuechanged、validation这两个事件,validation始终比valuechanged先执行,可以让valuechanged先执行于validation吗?

Rank: 8Rank: 8

沙发
发表于 2019-10-21 11:29:21 |只看该作者
如果,我测试是先触发valuechanged事件的


附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 4

板凳
发表于 2019-10-21 13:50:17 |只看该作者
textbox,是先觸發valuechanged,而autocomplete不是,

Rank: 8Rank: 8

地板
发表于 2019-10-21 14:17:00 |只看该作者
xj549897392 发表于 2019-10-21 13:50
textbox,是先觸發valuechanged,而autocomplete不是,

autocomplete是的,这事件顺序是无法改变的,你需要实现什么效果

Rank: 4

5#
发表于 2019-10-21 15:01:57 |只看该作者
比如,在autocomplete裏輸入了內容(需要驗證輸入內容存在於下拉內容列表裏)後直接點擊提交按鈕,提交按鈕與autocomplete不在同一frame下,提交按鈕會執行form.validate(),
如果輸入內容本來是存在於autocomplete下拉列表中,但這裏會驗證不通過,只有在autocomplete輸入內容選擇下拉內容,或點擊頁面空白處才會真的賦值,在執行doValueChanged時。
先執行了valuechanged事件,在重覆點擊提交按鈕時是可以驗證到

Rank: 8Rank: 8

6#
发表于 2019-10-21 15:44:08 |只看该作者
xj549897392 发表于 2019-10-21 15:01
比如,在autocomplete裏輸入了內容(需要驗證輸入內容存在於下拉內容列表裏)後直接點擊提交按鈕,提交按鈕與 ...

请设置valueFromSelect="true",这属性规定选项必须属于下拉项,如果不在下拉数据内,就会自动删除这个值。

Rank: 4

7#
发表于 2019-10-21 16:32:26 |只看该作者


请看附件,是这种情况,
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

8#
发表于 2019-10-21 17:04:50 |只看该作者
xj549897392 发表于 2019-10-21 16:32
请看附件,是这种情况,

了解了,我们看一下

Rank: 8Rank: 8

9#
发表于 2019-10-21 17:09:56 |只看该作者
xj549897392 发表于 2019-10-21 16:32
请看附件,是这种情况,

验证前处理一下了
var contorls=form.getFields();
$(controls).each(function(i,control){
   control.blur();
})
form.validate();

Archiver|普加软件

GMT+8, 2024-11-27 18:30 , Processed in 1.071969 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部