jQuery MiniUI

标题: AutoComplete valuechanged 会触发两次 [打印本页]

作者: paio    时间: 2013-5-14 10:01:39     标题: AutoComplete valuechanged 会触发两次

AutoComplete valuechanged 会触发两次
第一次触发text变化,第二次触发value变化,
怎眼才能只触发value变化

作者: paio    时间: 2013-5-14 14:26:11

无解吗?
作者: factory    时间: 2013-5-14 14:35:10

paio 发表于 2013-5-14 14:26
无解吗?

测试了没有发现会触发两次valuechanged事件
  1. <input id="tbl1" name="tb" class="mini-autocomplete" required="true" style="width:200px;"
  2.     valueField="id" textField="text"
  3.         url="../data/AjaxService.aspx?method=FilterCountrys2" value="cn" text="中国" onvaluechanged="onValueChanged"
  4. />
复制代码
  1. function onValueChanged(e) {
  2.             
  3.             var item = e.selected;
  4.             if (item) {
  5.                 alert(item.id + ":" + item.text);   //获取选中行更多属性
  6.             }
  7.         }
复制代码

作者: paio    时间: 2013-5-14 16:02:53

factory 发表于 2013-5-14 14:35
测试了没有发现会触发两次valuechanged事件
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html>
  3. <head>
  4. <title></title>
  5. <script src="/js/boot.js" type="text/javascript"></script>
  6. </head>
  7. <body>
  8. <div class="mini-toolbar" style="border-bottom:0;">
  9.     <div class="mini-autocomplete" popupWidth="400" textField="text" valueField="id"
  10.         url="getDataForSelect.do" onvaluechanged="onValueChanged">
  11.         <div property="columns">
  12.             <div type="indexcolumn" width="30"></div>
  13.             <div header="name" field="name" width="60"></div>
  14.         </div>
  15.     </div>
  16. </div>

  17. <script type="text/javascript">
  18.         mini.parse();
  19. var i=1;
  20.         function onValueChanged(e){
  21.                 console.log(i++);
  22.         }
  23. </script>
  24. </body>
  25. </html>
复制代码
这是我的代码,每次都触发两次,是哪里有问题
作者: factory    时间: 2013-5-14 16:36:57

paio 发表于 2013-5-14 16:02
这是我的代码,每次都触发两次,是哪里有问题

你的代码我测试,没有出现问题,除了URL还有onValueChanged的方法alert(),其他没有修改

你用FF或者chrome http://www.miniui.com/demo/#src=autocomplete/autocomplete.html  可以在线修改下这里的valuechanged

作者: paio    时间: 2013-5-14 17:16:25

factory 发表于 2013-5-14 16:36
你的代码我测试,没有出现问题,除了URL还有onValueChanged的方法alert(),其他没有修改

你用FF或者chrom ...
  1. var item = e.selected;
  2.             if (item) {
复制代码
知道为什么了,DEMO通过条件屏蔽了一次,其实还是触发了两次
作者: factory    时间: 2013-5-14 17:22:33

paio 发表于 2013-5-14 17:16
知道为什么了,DEMO通过条件屏蔽了一次,其实还是触发了两次

没啊,我拿你给的代码,也一样只alert一次
你可以吧demo的条件去掉,在再在线示例上面修改
作者: niko    时间: 2013-5-14 17:26:03

FF下autocomplete回车激发两次BUG
已修复,下载更新即可。
作者: paio    时间: 2013-5-14 17:52:40

factory 发表于 2013-5-14 17:22
没啊,我拿你给的代码,也一样只alert一次
你可以吧demo的条件去掉,在再在线示例上面修改 ...
  1. Uncaught TypeError: Cannot read property 'id' of undefined
复制代码
去掉注释,有一次是undefinded,出错了,所以只弹出一次。

我是用的chrome
作者: paio    时间: 2013-5-14 18:06:50

niko 发表于 2013-5-14 17:26
FF下autocomplete回车激发两次BUG
已修复,下载更新即可。

已更新,但是还是两次,看来只能条件判断了




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