关于EasyUI使用tree方法生成树形结构加载两次的问题

html代码中利用class声明了easyui-tree,导致easyUI解析class代码的时候先解析class声明中的easyui-tree这样组件就请求了一次url;然后又调用js初始化代码请求一次url。这样导致了重复加载,解决的方法就是只用一种初始化方法来声明easyUI组件以避免重复的提交请求,即删除html中的class声明(class="easyui-tree");

加载两次的写法:

<div class="easyui-panel" style="padding:5px;height:300px;">
    <ul id="roleTree" class="easyui-tree"></ul>
</div>
<script type="text/javascript">
    $(document).ready(function(){
        var id = $("#role_id").val();
        $(‘#roleTree‘).tree({
            method:‘get‘,
            animate:true,
            checkbox:true,
            url: ‘/index.php?m=role&f=getRole‘,
            loadFilter: function(data){
                if (data){
                    return data;
                }
            }
        });
    });
</script>

避免加载两次只需要把<ul id="roleTree" class="easyui-tree"></ul>中的class="easyui-tree"删除就可以,因为在js代码已经声明了easyui-tree

时间: 2024-08-26 02:21:46

关于EasyUI使用tree方法生成树形结构加载两次的问题的相关文章

Delphi中根据分类数据生成树形结构的最优方法

一. 引言:    TreeView控件适合于表示具有多层次关系的数据.它以简洁的界面,表现形式清晰.形象,操作简单而深受用户喜爱.而且用它可以实现ListView.ListBox所无法实现的很多功能,因而受到广大程序员的青睐.    树形结构在Windows环境中被普遍应用,但在数据库开发中面对层次多.结构复杂的数据,如何快速构造树形目录并实现导航呢?    二. 实现关键技术:    在Delphi提供的控件中包含了TreeView控件,但树的具体形成还需要用户编写代码.即它的列表项要在程序

C#生成树形结构泛型类

C#生成树形结构泛型类,使用方法: ToTree<ShowMessageUpdatesTableTreeViewModel>.ToDo(models) public class ToTree<T> where T : IToTreeModel { public static List<T> ToDo(List<T> models) { var dtoMap = new Dictionary<int, T>(); foreach (var item

解决jeecg3.5中由于easyui的原因会加载两次数据的问题

在解决完jeecgt3.5中的这个问题:jeecg3.5中实现从一个页面跳转到另一个页面 后,发现数据会被加载两次,在网上找了半天也没找到原因,最后发现是由于调用datagrid方法太快引起的,解决方法为使用setTimeout延迟执行datagrid方法,具体如下: $(function() { //延迟200毫秒执行,否则easyui会加载两次数据 setTimeout(init, 200); }); function init() { //alert($('#jeecgDemoList')

EasyUI treegrid 实现点击父节点加载子节点

今天在项目中遇到问题,要实现 EasyUI   treegrid 实现点击父节点加载子节点 第一反应是去百度一下,谷歌一下,发现网上的回答不是懒加载就是在onBeforeExpand调用append方法 我决定使用第二种方法,定义treegrid的onBeforeExpand方法,在里面调用appen方法. 然而当我兴冲冲的运行的时候,出问题了, Firefox出现too much recursion异常提示 在网上看了一下这个问题的出现原因,大家都说是,非法使用了js关键字,可是我看了几遍代码

jQuery_review 之 通过.load()方法来实现异步加载HTML文档

原生的ajax编写起来是相当麻烦的一件事情,我们不仅仅要处理不同浏览器下的XMLHttpRequest对象不同的初始化,还需要识记大量的XMLHttpRequest对象的属性和方法,而且做的很多都是重复性的工作,就如同jdbc的实现方式是一样的,JDBC有很多固定的模式,所以不管是Hibernate还是Ibatis亦或是Spring都使用模板模式来封装了大量相同的调用,让整个方法变得更加容易使用.对于程序员来说,这些都是一些非常好的事情,因为再也不用重复造轮子了,重复造轮子,成本高,性能也未必与

jQuery_review之通过$.get()和$.post()方法来实现异步加载

$.get()和$.post()这两个方法,顾名思义,一个就是通过get方法来获取数据,另外一个通过post方法来获取数据.这两个方法在具体有什么区别呢?重点有三个方面的区别,第一个get传送的数据理论在2KB之内,post方法原则上是不受限制的.第二个方面,一个在地址栏上会显示当前的请求内容,这种在有用户名和密码的时候就不好了.另外一个是在请求体当中,这个虽然也不是很安全,但是至少要比GET方法要安全那么一点点了.第三个,其实get方法最初是用来设计请求静态内容的,而POST则是用来提交增删改

使用递归实现省市区树形节点加载

List<MODEL.Areas> list = null; //定义Areas实体类对象以备接受数据,递归是方法调用方法本身,所以需要定义方法,然后窗体加载的时候调用方法,所以需要在方法体外定义为全局变量 private void FrmAreas_Load(object sender, EventArgs e) { BLL.AreasManager bllarea = new BLL.AreasManager(); list=bllarea.bllareas(); //接受数据 LoadD

Spring task配置,及解决加载两次的方法

? 关于 启动Task任务同时加载两次的解决方法:? 将spring MVC部分的定义另外建立一个文件,同时把Task配置放在此处,然后在web.xml文件中的处加载 <servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-pa

vue超简单加载字体方法,解决scss难加载字体的问题

vue超简单加载字体方法,解决scss难加载字体的问题 scss在加载字体方面一直不太好用,需要繁杂的配置才能达到想要的效果,这里说一种非常简单的方法 在App.vue的style标签下引入字体文件后,scss设置的字体依旧可以正确识别,注意style的lang不要写,就使用原生css 示例引入 <style> @font-face{ font-family: pingfang; src: url('./style/pingfang.ttf') } </style> 然后想要的位置