jQuery MiniUI

标题: outlookbar setGroups方法 [打印本页]

作者: fanfan1121    时间: 2012-9-13 13:01:38     标题: outlookbar setGroups方法

<div id="outlookbar1" class="mini-outlookbar " activeIndex=""
   style="width: 180px; height: 200px;" autoCollapse="true">
   <div title="用户管理">
    yhgl
   </div>
   <div title="产品管理">
    软件库管理
    <br>
    升级包发布
    <br>
    软件分版管理
    <br>
    物料目录管理
    <br>
    产品构件管理
    <br>
    产品包管理
   </div>
   <div title="商务管理">
    swgl
   </div>
   <div title="商场管理">
    scgl
   </div>
  </div>


/**
      * Methods应用集合
      */
     function setGroups(){
       var outlookbar1 = mini.get("outlookbar1");
      var menu='{"name":"test001","title":"测试menu001"}';
      //gruop对象
      outlookbar1.addGroup(mini.decode(menu));
     }

怎么通过这种动态添加menu,就是报错,请指教。如下图:
[attach]602[/attach]



作者: factory    时间: 2012-9-13 13:51:16

setGroups()里面参数是Array,
所以你的代码应该是这样:
  1. var menu='[{"name":"test001","title":"测试menu001"}]';
  2. outlookbar1.setGroups(mini.decode(menu));
复制代码

作者: fanfan1121    时间: 2012-9-13 15:30:06

说明:我上面的例子是调用的addGroup方法,与该帖子的title不一致;

var menu='[{"name":"test001","title":"测试menu001"}]';
outlookbar1.setGroups(mini.decode(menu));

我按照楼主说的去做,还是报“消息: 'firstChild' 为空或不是对象”这个错误;
作者: fanfan1121    时间: 2012-9-13 15:31:19

factory 发表于 2012-9-13 13:51
setGroups()里面参数是Array,
所以你的代码应该是这样:

这个添加了,还是一样的错误呀。是格式问题吗。看了API group的属性,也没错呀。
作者: factory    时间: 2012-9-13 16:06:55

本帖最后由 factory 于 2012-9-13 16:08 编辑
fanfan1121 发表于 2012-9-13 15:31
这个添加了,还是一样的错误呀。是格式问题吗。看了API group的属性,也没错呀。 ...


去测试了一下,我给你的代码是没问题的建议你建个最干净的页面,单独测试这个方法.
  1. function addgroup(){
  2.             var outlookbar1 = mini.get("outlookbar1");
  3.             
  4.             var menu='[{"name":"test001","title":"测试menu001"}]';
  5.             
  6.             outlookbar1.setGroups(mini.decode(menu));
  7.         }
复制代码

作者: fanfan1121    时间: 2012-9-13 16:30:26

factory 发表于 2012-9-13 16:06
去测试了一下,我给你的代码是没问题的建议你建个最干净的页面,单独测试这个方法.  ...

问题我重现了。
我参考的是[在线演示]outlookbar这个例子,简单的改了一下。加了一个button和一个函数:
<a class="mini-button" onclick="addgroup">setGroups()</a>  
函数,是你发的那个;

重现步骤:
1、第一次加载完,页面后,直接点击 button,再对菜单进行收缩与展示的操作,是没问题的;
2、如果第一次加载完成页面后,先对菜单进行收缩与展示的操作后,再点击button,就会出现那个问题;


作者: factory    时间: 2012-9-13 16:51:54

fanfan1121 发表于 2012-9-13 16:30
问题我重现了。
我参考的是[在线演示]outlookbar这个例子,简单的改了一下。加了一个button和一个函数:
...


第二个步骤,是页面呈现之后,我操作outlookbar进行折叠或者展开的操作,然后再点击按钮进行setGroups?
我试了,也没有发现问题.
你看下你的miniui的版本是不是9月10号的
或者你将你出错的页面,单独打包上传,我在本地试下你的例子看看

作者: fanfan1121    时间: 2012-9-13 17:22:04

factory 发表于 2012-9-13 16:51
第二个步骤,是页面呈现之后,我操作outlookbar进行折叠或者展开的操作,然后再点击按钮进行setGroups?
我试 ...

[attach]612[/attach]

请参见:miniui_java\WebContent\demo\fbn\outlookbar_simple.html文件

作者: fanfan1121    时间: 2012-9-14 09:51:10

factory 发表于 2012-9-13 16:51
第二个步骤,是页面呈现之后,我操作outlookbar进行折叠或者展开的操作,然后再点击按钮进行setGroups?
我试 ...

今天继续啊。
作者: fanfan1121    时间: 2012-9-14 09:51:56

factory 发表于 2012-9-13 16:51
第二个步骤,是页面呈现之后,我操作outlookbar进行折叠或者展开的操作,然后再点击按钮进行setGroups?
我试 ...

示例已经发上来了。
作者: factory    时间: 2012-9-14 11:05:29

fanfan1121 发表于 2012-9-14 09:51
示例已经发上来了。

这个问题已经解决了..看了你的miniui.js还是8月份的老版本,请去下载最新版本就可以了
作者: fanfan1121    时间: 2012-9-14 15:58:19

factory 发表于 2012-9-14 11:05
这个问题已经解决了..看了你的miniui.js还是8月份的老版本,请去下载最新版本就可以了 ...

好的,3Q。




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2