AJAX返回的html或者是js定义的html无法做到自动渲染为EasyUI的样式。比如:class="easyui-linkbutton" 等,虽然我们可以对应执行代码来渲染它,但前提是你得知道它是什么控件,比如:

$("body").append('确定按钮');//生成控件html

$("#a").linkbutton();//渲染

但是假如控件不确定时就不能使用以上方法,我们可以为其扩展一个方法。

(function ($) {

$.parser = {

auto:true,

plugins:['linkbutton', 'menu', 'menubutton', 'splitbutton', 'layout','tree', 'window', 'dialog', 'datagrid','combobox', 'combotree', 'numberbox', 'validatebox','calendar', 'datebox', 'panel', 'tabs', 'accordion'],

parse:function (context) {

if ($.parser.auto) {

for (var i = 0; i 

(function () {

var name = $.parser.plugins[i];

var r = $('.easyui-' + name, context);

if (r.length) {

if (r[name]) {

r[name]();

} else if (window.easyloader) {

easyloader.load(name, function () {

r[name]();

})

}

}

})();

}

}

}

};

})(jQuery);

这样当某些html增加后就可调用$.parser.parse(context)来渲染控件。context  为待查找的 DOM 元素集、文档或 jQuery 对象,为空时默认为整个文档

关键词: jquery easyui,ajax,控件渲染   编辑时间: 2013-09-10 10:57:49

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐