起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5048|回复: 18

[处理中1] 多级select筛选问题

[复制链接]

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
发表于 2016-10-25 16:40:32 | 显示全部楼层 |阅读模式
我做了一个注册页面,有一个地址的输入需要用多个select来筛选,每个select的option的data都是我用ajax获取的,当上一级选项切换的时候,后面的select的data要有变化。
但是出问题了,前一级切换选项的时候,下一级的option对应的data没有执行先清除再加载新数据,而是把旧数据和新数据都加进来了。
怎么清除切换后的下一级的select的option对应的data,我用了data。clear();没有解决
版主快来救救我!!!!!!!!!!!!!!!!在线等

1

主题

3232

帖子

1174

积分

金牌会员

Rank: 6Rank: 6

积分
1174
QQ
发表于 2016-10-25 17:48:54 | 显示全部楼层
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData ,然后在刷新一次Data呢?
在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 18:08:32 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

我是先Data。clear,再loadData,再saveData
wex5 & android
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 18:09:18 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

你说的刷新data是refresh()吗?
wex5 & android
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 18:12:02 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

我查了下我的select的bind-optionsLabel有残留,怎么清除bind-optionsLabel
wex5 & android
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 19:41:44 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

我的select在清空data后,data。getCount()是0,但是select的选项里还是会缓存一条清空之前的数据,autoLoad都设置为false了也不行
wex5 & android
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 19:42:08 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

我的select在清空data后,data。getCount()是0,但是select的选项里还是会缓存一条清空之前的数据,autoLoad都设置为false了也不行
wex5 & android
回复 支持 反对

使用道具 举报

10

主题

89

帖子

549

积分

高级会员

Rank: 4

积分
549
QQ
 楼主| 发表于 2016-10-25 19:42:31 | 显示全部楼层
闰土 发表于 2016-10-25 17:48
这样的话 逻辑是这样的 ,先执行data.clear(),然后根据select 的值过滤出希望显示的数据,执行 loadData , ...

我的select在清空data后,data。getCount()是0,但是select的选项里还是会缓存一条清空之前的数据,autoLoad都设置为false了也不行
wex5 & android
回复 支持 反对

使用道具 举报

1

主题

3232

帖子

1174

积分

金牌会员

Rank: 6Rank: 6

积分
1174
QQ
发表于 2016-10-26 09:53:30 | 显示全部楼层
jane_jane 发表于 2016-10-25 19:42
我的select在清空data后,data。getCount()是0,但是select的选项里还是会缓存一条清空之前的数据,aut ...

bind-optionsLabel 这个不影响,Data吧这个是select的。
刷新是 data.refreshData()  , 现在就是说有的数据都在一个data中? 如果是这样的话
先执行Data.setFilter("filter",select.val() = data.val) // 过滤Data
然后在执行 data.refreshData()

就不用从新加载Data ,一次加载完毕,每次过滤就可以了
在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

1

主题

3232

帖子

1174

积分

金牌会员

Rank: 6Rank: 6

积分
1174
QQ
发表于 2016-10-26 09:53:33 | 显示全部楼层
jane_jane 发表于 2016-10-25 19:42
我的select在清空data后,data。getCount()是0,但是select的选项里还是会缓存一条清空之前的数据,aut ...

bind-optionsLabel 这个不影响,Data吧这个是select的。
刷新是 data.refreshData()  , 现在就是说有的数据都在一个data中? 如果是这样的话
先执行Data.setFilter("filter",select.val() = data.val) // 过滤Data
然后在执行 data.refreshData()

就不用从新加载Data ,一次加载完毕,每次过滤就可以了
在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-5 09:00 , Processed in 0.100861 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表