jQuery MiniUI

 找回密码
 立即注册
查看: 11427|回复: 10
打印 上一主题 下一主题

关于动态生成miniui控件的问题 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2012-12-20 16:45:08 |只看该作者 |倒序浏览
如题:
   str="";
    str += '<input class="mini-checkbox" checked="true" name="' + childrenMenu[k].functionCode + "_" + childrenMenu[k].functionID + "_" + j + '" falseValue="0" trueValue="' + menuItem[j].item.value + '" text="' + menuItem[j].item.text + '" style="width: 100%" />';

  $("#div_Panels").html(str);
                mini.parse();

向这样的例子 我动态添加了一个checkbox 设置为选中状态 在ie8下面能正常显示,但是换到ie7或者ie8兼容模式就不能显示为选中状态,  请帮我解决一下。

Rank: 8Rank: 8

沙发
发表于 2012-12-20 17:29:13 |只看该作者
miniui必须使用标准模式,不支持兼容模式

Rank: 2

板凳
发表于 2012-12-20 17:37:35 |只看该作者
factory 发表于 2012-12-20 17:29
miniui必须使用标准模式,不支持兼容模式

ie7标准也不支持么

Rank: 8Rank: 8

地板
发表于 2012-12-21 09:26:38 |只看该作者
OrigenHc 发表于 2012-12-20 17:37
ie7标准也不支持么


支持IE6,以及IE6+
如果找不出问题,建议吧问题页面打包上传

Rank: 2

5#
发表于 2012-12-21 11:30:13 |只看该作者
factory 发表于 2012-12-21 09:26
支持IE6,以及IE6+
如果找不出问题,建议吧问题页面打包上传

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title></title>
    <script src="/Scripts/WebControls/boot.js" type="text/javascript"></script>
    <script src="/Scripts/Other.js" type="text/javascript"></script>
    <script src="/Scripts/OG_Message.js" type="text/javascript"></script>
</head>
<body>
    <form id="form1" runat="server">
    <div class="mini-panel" showheader="false" style="width: 100%; border: none; height: 700px;"
        showfooter="true">
        <div class="outer">
            <fieldset class="fieldset_detail">
                <legend>功能信息</legend>
                <div id="div_Panels" style="width: 100%; height: 100%;">
                </div>
            </fieldset>
        </div>
    </div>
    <script type="text/javascript" language="javascript">
        mini.parse();
        var form = new mini.Form("form1");

        var data = [{ "functionID": 2, "functionName": "客户管理", "systemID": 3, "parentID": 0, "functionCode": "MSS0100", "functionType": "1", "operateAccess": 0, "listFun": [{ "functionID": 3, "functionName": "客户基础信息", "systemID": 3, "parentID": 2, "functionCode": "MSS0101", "functionType": "2", "operateAccess": 3, "listFun": null, "items": "[{\"item\":{\"value\":\"1\",\"text\":\"查询\"}},{\"item\":{\"value\":\"2\",\"text\":\"编辑\"}}]"}], "items": ""}];

        system_valuechanged(data);

        //生成列表
        function system_valuechanged(data) {

            var functionPer = data;
            var str = "";
            //最外层的功能菜单
            for (var i = 0; i < functionPer.length; i++) {
                str += '<div class="mini-panel" id=' + functionPer.functionCode + '  title="<input name=' + functionPer.functionCode + '  class=mini-checkbox text=' + functionPer.functionName + ' oncheckedchanged=onCheckedChanged />" style="width: 100%; height: 100%;" showcollapsebutton="true">';

                //循环子菜单
                var childrenMenu = functionPer.listFun;
                for (var k = 0; k < childrenMenu.length; k++) {
                    str += '<div class="divcontent">';
                    str += '<ul>';
                    str += '<li class="lilab_left">' + childrenMenu[k].functionName + '</li>';
                    str += '<li class="licontent">';

                    //循环菜单的操作权限
                    //此功能已有的权值
                    var operateAccess = parseInt(childrenMenu[k].operateAccess);
                    var menuItem = mini.decode(childrenMenu[k].items);
                    for (var j = 0; j < menuItem.length; j++) {
                        var itemValue = parseInt(menuItem[j].item.value);
                        var operateAccessValue = operateAccess & itemValue;

                        if (operateAccessValue == itemValue) {
                            str += '<input class="mini-checkbox" checked="true" name="' + childrenMenu[k].functionCode + "_" + childrenMenu[k].functionID + "_" + j + '" falseValue="0" trueValue="' + menuItem[j].item.value + '" text="' + menuItem[j].item.text + '" style="width: 100%" />';
                        } else {
                            str += '<input class="mini-checkbox" name="' + childrenMenu[k].functionCode + "_" + childrenMenu[k].functionID + "_" + j + '" falseValue="0" trueValue="' + menuItem[j].item.value + '" text="' + menuItem[j].item.text + '" style="width: 100%" />';
                        }
                    }

                    str += '</li>';
                    str += '</ul>';
                    str += '</div>';
                }
                str += ' </div>';


                $("#div_Panels").html(str);
                mini.parse();
            }
        }

    </script>
    </form>
</body>
</html>

Rank: 2

6#
发表于 2012-12-21 11:31:09 |只看该作者
factory 发表于 2012-12-21 09:26
支持IE6,以及IE6+
如果找不出问题,建议吧问题页面打包上传

原谅我不知道该怎么打包上传这个文件

Rank: 8Rank: 8

7#
发表于 2012-12-21 14:03:45 |只看该作者
OrigenHc 发表于 2012-12-21 11:31
原谅我不知道该怎么打包上传这个文件

我们本地看下

Rank: 8Rank: 8

8#
发表于 2012-12-21 14:35:57 |只看该作者
factory 发表于 2012-12-21 14:03
我们本地看下

我看了下你的代码
1.//循环子菜单
                var childrenMenu = functionPer[0].listFun;
这里你原来functionPer.listFun这样写是错的把

2.checkbox是<div>,不是input,你把input改成div,然后后面的/>改成></div>这样结尾就可以了

Rank: 2

9#
发表于 2012-12-21 15:35:58 |只看该作者
factory 发表于 2012-12-21 14:35
我看了下你的代码
1.//循环子菜单
                var childrenMenu = functionPer[0].listFun;

谢谢你, 改成div确实就可以了,但是我没有看到在哪有说明checkbox要用div 呢    其他的控件又需要用哪种标签来对应呢

Rank: 8Rank: 8

10#
发表于 2012-12-21 16:09:59 |只看该作者
OrigenHc 发表于 2012-12-21 15:35
谢谢你, 改成div确实就可以了,但是我没有看到在哪有说明checkbox要用div 呢    其他的控件又需要用哪种 ...

这个,demo上怎么创建就怎么写,毕竟是miniui ,跟HTML原生的写法是有不一样的地方的

Archiver|普加软件

GMT+8, 2024-6-21 14:11 , Processed in 1.051938 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部