动态添加easyui控件<input class=" easyui-textbox" > 这样是无效的,因为easyui没有实时监控,所以必须动态渲染$.parser.parse();
- $.parser.parse(context)
- //context 为待查找的 DOM 元素集、文档或 jQuery 对象,为空时默认为整个文档
- //渲染对象为: class="easyui-pluginName"的元素
注意 如果想通过id 获取 jQuery对象来获取的话必须 $.parser.parse($('#judge_logic_').parent()); 后面必须有一个 .parent() 否则无效
像下面代码去手工解析的话是得不到你想要的结果的:
$.parser.parse($('#tt'));
道理很简单,parser只渲染tt的子孙元素,并不包括tt自身,而它的子孙元素并不包含任何Easyui支持的控件class,所以这个地方就得不到你想要的手风琴效果了,应该这样写:
$.parser.parse($('#tt').parent());
渲染tt的父节点的所有子孙元素就可以了,个人觉得通过jQuery的parent()方法是最安全不过的了,不管你的javascript输出了什么DOM,直接渲染其父节点就可以保证页面能被正确解析
保证动态添加的还能用到原生的校验
<input class="easyui-validatebox easyui-textbox" name="links_desc" data-options="required:true" id="links_desc"
>';
这两个样式是不能少的
直接渲染的话只要 easyui-textbox这个样式
附上代码
var html ='<tr>'
html +='<td>关键字:</td>'
html +='<td>'
html +='<input class="easyui-validatebox easyui-textbox" name="links_desc" data-options="required:true" id="links_desc" >';
html +='</td>'
html +='</tr>';
if(val==1){
$("#zhuangtai").after(html)
$.parser.parse($("#links_desc").parent());
}
html +='<td>关键字:</td>'
html +='<td>'
html +='<input class="easyui-validatebox easyui-textbox" name="links_desc" data-options="required:true" id="links_desc" >';
html +='</td>'
html +='</tr>';
if(val==1){
$("#zhuangtai").after(html)
$.parser.parse($("#links_desc").parent());
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构