Select2 多层次赋值时异步赋值的问题
场景:
当选择人员时加载人员,选择部门时加载部门.所以在人员下,选择人员A后,如果选择部门,会触发二级select 重新获取数据.
问题:
使用select2()方法进行绑定远程数据后,对第二个select2进行绑定赋值存在问题
1.如果选择同步时,第一个select2在赋值成功前,标签会卡在那里,直到数据加载完后才可以看到隐藏效果.

2.如果选择异步,同时赋值,会导致第二个赋值再被第一个change事件后清空值,因为二级select重新获取数据尚未结束.

解决方案:
使用异步处理请求,防止出现同步时下拉框Loading,体验差的情况.
1.存储二级select的值
2.添加回调参数(默认可不填),在change执行成功后,调用回调函数赋值.
function callback(r) {
console.log(r);
if ($("#hidDataCode").val().length > 0) {
$("#selDataCode").val($("#hidDataCode").val()).trigger("change");
$("#hidDataCode").val("");
}
}
Select2 多层次赋值时异步赋值的问题的更多相关文章
- Go 多变量赋值时注意事项
说到多变量赋值时,先计算所有相关值,然后再从左到右依次赋值,但是这个规则不适用于python我们来看一例: package main import "fmt" func main( ...
- FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时遇到的坑,给textview赋值时出现的空指针异常
FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时,给textview赋值时出现的空指针异常 public class BaseFr ...
- bash 脚本编程 利用 “=” 赋值时,左右不能留空格
对脚本变量用“=”赋值时, "=" 左右不能留有空格,否则会提示错误. 比如以下例子: #!/bin/bash BEGIN_TIME = `date +%H:%M:%S` ./a. ...
- EF架构~为导航属性赋值时ToList()的替换方案
回到目录 今天在进行EF开发时,遇到一个问题,在进行join查询时,类中的一个集合类型的导航属性,在给它赋值时,将查询出来的结果ToList()后,出错了,linq to entity不支持这种操作, ...
- js的变量使用<bean><list:write>赋值时需加' '
script的变量使用<bean><list:write>赋值时需加' ',如:var code ='<bean:write name="target" ...
- <jsp:param>标签给属性赋值时的一个坑
http://blog.sina.cn/dpool/blog/s/blog_58c5066001011gdn.html 因为: <jsp:forward和<jsp:param在被编译成ja ...
- C/C++ 错误笔记-在给结构体中的指针赋值时,要注意该指针是否已指向内存空间
先来看下面的例子: #include <stdlib.h> #include <string.h> #include <stdio.h> #pragma warni ...
- sh脚本变量赋值时同时执行命令时的环境问题
在v2ex看到一个问题: 允许在一个命令之前立即发生一个或多个变量赋值,这些赋值为跟随着的命令更改环境变量,这个赋值的影响是暂时的. 那为什么: int=100 int=10 echo $(($int ...
- String在方法中的传递方式(调用外部方法给String变量赋值时,未得到预期结果)
示例: public class StringTraining { public static void changeStr(String str){ str = "137878" ...
随机推荐
- 解决ubuntu的gedit编辑器中文乱码的问题
hello,本人 sky 又和大家见面了很多人在使用ubuntu系统时发现打开windows系统下面写的文档的话会发现乱码,是因为编码格式的问题windows系统下面是用GB2312等编码格式进行中文 ...
- 查看局域网中连接的主机名和对应的IP地址
1.查看局域网中的所有主机名 2.通过主机名解析IP地址:-4选项 3.通过IP地址解析主机名:-a选项
- lua 中 socket 通信示例
server.lua #!/usr/bin/lua local socket = require("socket") host, port = "127.0.0.1&qu ...
- hostapd中扫描的调用过程
扫描结果获取supplicant_event(EVENT_SCAN_RESULTS)wpa_supplicant_event_scan_results_wpa_supplicant_event_sca ...
- $Django redis内存数据库 (知识回顾cmd切换目录)
知识小回顾 #切换盘 C:\Users\WangDong>f: F:\> #切换文件 F:\>cd redis F:\redis> #返回上一级 F:\DJ\dj8>cd ...
- 修改SIP协议中的User-Agent名称
修改目的:如果user-agent 带上了 GIT 版本信息,容易被人抓住版本漏洞针对性的攻击. 示例如下: SIP/2.0 100 Trying Via: SIP/2.0/UDP 192.168.5 ...
- 1.ROS启动小乌龟
启动turtlesim 在三个不同的终端中分别执行如下三个指令 roscore rosrun turtlesim turtlesim_node rosrun turtlesim turtle_ ...
- 转载:MySQL字段类型
原文:https://www.cnblogs.com/jennyyin/p/7895010.html 数值类型 类型 大小 范围(有符号) 范围(无符号) 用途 TINYINT 1 字节 (-128, ...
- layui 左侧三级菜单栏
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- layui 各种弹出框
第一步:引用文件 第二步:写脚本 <script> //iframe窗 //layer.open({ // type: 2, // title: false, // closeBtn: 0 ...