1. 程式人生 > >js動態修改Easyui元素不生效,EasyUI動態渲染解析解決方案

js動態修改Easyui元素不生效,EasyUI動態渲染解析解決方案

easyui的渲染是在在網頁載入完成後,相當於在$(document).ready()事件中,對整個網頁進行了一次掃描,發現某個input標籤含有easyui的屬性,就在相應的地方進行ui的修改。因此,如果我們用什麼append、appendTo方法動態在頁面中插入一段html程式碼,或者用什麼addClass方法給input標籤動態新增一個class屬性,這些操作EasyUI是不知道的,所以新插入的這些東東,即使有class="easyui-XXXXXXX"屬性,但沒有任何效果。

$.parser.parse()由於它對整個頁面進行渲染,以前正常的元件也被渲染了,相當於所有的元件進行了一次“初始化”,最終導致值丟失。 $.parser.parse()是可以帶引數的,引數意思差不多就是傳入一個區域性的DOM物件,只對區域性進行渲染,避免影響其他元件。

var appendDoc=$('<div class="layui-col-md5 layui-col-sm5 layui-col-xs5 fileboxdiv"><input  name="file" class="easyui-filebox filebox" /></div>').appendTo("#fileDiv");
         $.parser.parse(appendDoc);

我們常常會通過appendTo方法把使用了datebox元件的input標籤插入到某個DOM中,別忘了appendTo方法是有返回值的,返回的恰恰就是剛剛插入的物件。我們拿到這個物件,單獨對它進行渲染,這樣既可以實現動態渲染,又能避免影響其它元件。


轉載:https://www.cnblogs.com/GH0522/p/10150781.html