1.背景
前段使用Layui框架,jQuery动态设置的下拉框select标签,加载时而正常时而失效。
本地调试完全没有问题,但是在服务器运行加载成功和失败的比例五五开。

2.解决
问题原因:Layui的form美化修饰和jQuery的select方法发生冲突,受渲染速度不同影响,最终的select异步加载成功与否也会不同。
解决方法:在使用jquery异步加载完成之后,调用Layui的重新渲染方法,对页面重新渲染

如下:

<script type="text/javascript">$(function() {init();})//页面初始化function init() {$.ajax({type: "post",url: "http://...",timeout : 30000,success: function(result) {var select = $("select[name=siteId]");var site = ${house.siteId}$.each(result.data, function(index, element) {var option = $("<option value='"+element.id+"'>"+element.name+"</option>");select.append(option);  if(site == element.id){option.prop("selected",true)}})},error: function() {},async: false});//添加下面的代码,重新渲染,可以有效避免加载失效问题layui.use('form', function(){var form = layui.form;form.render();});}
</script>

3.总结:
ajax改成同步请求!!!!!然后form.render()ajax改成同步请求!!!!!然后form.render()

转自

Layui中Jquery动态设置的select标签加载时而正常时而失效问题排查和解决相关推荐

  1. vue中使用动态添加路由(router.addRoutes)加载权限侧边栏的两种方式

    工作中我们经常会遇到这种需求,后台定义用户的权限数据,前端进行获取,并渲染在侧边栏导航上,不同权限的用户看到的侧边栏是不同的.即前端渲染的数据是随着后台的改变而改变的,做到真正的前后端分离. 一.拿到 ...

  2. jQuery动态增加/删除select下来框的option中的selected属性

    jQuery动态增加/删除select下来框的option中的selected属性 1.说明:选中下拉框的时候,先清除所有选中的option选项 2.效果截图: 1.说明:选中下拉框的时候,先清除所有 ...

  3. layui中的动态表格

    layui中的动态表格 介绍 layui提供了丰富的动态表格的操作,它用于对表格进行一些列功能和动态化数据操作,涵盖了日常业务所涉及的几乎全部需求.支持固定表头.固定行.固定列左/列右,支持拖拽改变列 ...

  4. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  5. 在xml文件的Preference标签中,用extra给intent标签加参数

    2019独角兽企业重金招聘Python工程师标准>>> 在xml文件的Preference标签中,用<extra>给<Intent>标签加参数,以及<i ...

  6. vue项目中 img标签加载失败方法,onerror事件的两种方法

    vue项目中 img标签加载失败方法 ?css 第一种方法 第二种方法 本人写的第一篇文章,希望对你有帮助 第一种方法 < img src="123" :οnerrοr=&q ...

  7. vue项目中 img标签加载失败(404)方法,@error事件

    vue项目中 img标签加载失败方法,@error事件 @error="defImg" <img src="123" @error="defIm ...

  8. php网站首页点击更多时获取数据,jQuery+PHP实现点击按钮加载更多,不刷新页面加载更多数据!附:可用源码+demo...

    先上效果: 刚打开页面的时候,只显示部分数据,点击加载更多的时候,就会加载我们预先定义的加载数量显示出来!当数据库里面的所有数据都显示出来,就提示全部加载了! 新建index.php jQuery+p ...

  9. 如何使用jQuery创建“请稍候,正在加载...”动画?

    我想在我的网站上放置一个"请稍等,加载中"的旋转圆圈动画. 我应该如何使用jQuery完成此操作? #1楼 Jonathon的出色解决方案在IE8中中断(动画完全不显示). 要解决 ...

最新文章

  1. Linux下查找文件方法
  2. tomcat配置文件修改
  3. 【转】C++ this指针(直戳本质)
  4. python接口自动化测试面试题_Python 接口自动化测试实战
  5. net core WebApi——使用xUnits来实现单元测试
  6. MIT免费生物信息课程 (代码、文档、数据) - 适合系统学习
  7. centOS目录结构
  8. 梯度下降的线性回归用python_学习笔记:使用python 实现线性回归里的梯度下降...
  9. Mac下Docker镜像加速
  10. 佳能Canon PIXMA MP492 打印机驱动
  11. python 经验模态分解_心电信号去噪4--经验模态分解法(EMD)
  12. Hyperledger Fabric 1.0 公有云安装7--集群部署记录
  13. arcgis许可服务器不运行,ArcGIS许可服务管理器无法启动问题解决方法
  14. 测试开发工作者日记:2020.67-6.9
  15. HZOI20190903模拟36 字符,蛋糕,游戏
  16. Harvester云计算超融合基础架构HCI软件
  17. 阿里图标icon二次引入+ 图标引入后是黑色解决办法。
  18. windows server 2008 R2无法共享文件夹,无法启用网络发现。
  19. Windows系统下批量重命名文件(超详细操作讲解)
  20. PIC18F66K80存储器构成(详解)

热门文章

  1. 小圈子.大社交:利用圈子引爆流行
  2. steps/align_si.sh
  3. 5-3如何设置文件的缓冲
  4. Android开发中高效的数据结构用SparseArray代替HashMap
  5. socket编程之select()
  6. Activiti-01
  7. linux 0.11 内核学习 -- rs_io.s,串口汇编代码
  8. 希尔排序python实现
  9. 【Python 】单引号和双引号有什么区别?
  10. 科大星云诗社动态20210423