解决layui中onchange失效以及form动态渲染失效的问题
作者:小满时间:2026-10-23 11:35:05浏览:446
在使用layui框架进行城市三级级联开发时,原生jQuery的onchange事件往往无法直接触发。本文详细讲解了如何通过layui.form().on()方法正确监听控件变化,并针对动态拼接DOM后表单不更新的问题,演示了调用form.render()进行强制渲染的操作步骤,确保动态内容正常显示。
layui中onchange事件失效原因
在近期使用layui框架开发城市三级级联功能时,发现jQuery原生的onchange事件方法在layui环境中无法正常工作。
查阅layui社区文档后得知,layui对控件变化的监控提供了专门的监听机制。
静态控件监听实现
HTML结构部分:
<select lay-filter="test"></select>
JavaScript逻辑部分:
var form = layui.form();
form.on('select(test)', function(data){
console.log(data);
});
按照上述方式配置,即可实现预期的监听效果。
动态表单渲染解决方案
在处理动态拼接内容并给控件赋值时,layui相比jQuery多了一个必要的步骤。
动态内容渲染步骤
jQuery的传统做法:
$('#city').append('<option value=' + value + '>' + value + '</option>');
layer:
$('#city').append('<option value=' + value + '>' + value + '</option>');
完成动态拼接后,必须调用以下代码:
form.render();
页面才能正确渲染出动态拼接的内容。
以上关于解决layui中onchange失效以及form动态渲染失效的内容分享完毕,希望能为读者提供参考,并欢迎大家继续支持本站。
作者最新文章
JS空字符串、null和undefined转数字的结果是什么
2026-11-05 14:49:16
CodePen、JSFiddle与StackBlitz:主流JS在线编辑器对比
2026-11-05 13:38:29
JS怎么将时间戳转换为“刚刚”、“几分钟前”等相对时间
2026-11-05 12:55:14
JavaScript将儒略日逆向还原为公历日期时间的实现方法
2026-11-04 23:51:05
能在我的世界手机版直接修改JS代码吗
2026-11-04 19:02:53
