jQuery MiniUI

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

对mini-Panel进行扩展 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-3-7 10:40:52 |只看该作者 |倒序浏览
这两天在做一个多附件上传下载的控件,是在Panel的基础上扩展的,但遇到一些问题。
如何实现与其他简单控件相同的require设置,
调试了一下代码,发现Panel在初始化时候不会保留自己在页面上写的属性,写法如下:
<div id="files1" class="mini-multifile" required="true" style="border-bottom:0;padding:0px;height:50%"></div>
脚本如下:
mini.extend(mini.ux.MultiFile, mini.Panel, {
    title: "上传",
    showHeader: false,
    showToolbar: false,
    showFooter: false,
    showCloseButton: false,
    showCollapseButton: false,
    width: 300
    height: 120,
    required: false,
    uiCls: "mini-multifile",
.....
另外想问一下在初始化的时候为何获不到页面定义的控件id,this.id取出来的是mini-1

Rank: 8Rank: 8

沙发
发表于 2013-3-7 13:39:38 |只看该作者
1.从panel派生的话,无法使用require,因为本身panel无法require

2.你是如何获取的

Rank: 2

板凳
发表于 2013-3-7 13:49:25 |只看该作者
factory 发表于 2013-3-7 13:39
1.从panel派生的话,无法使用require,因为本身panel无法require

2.你是如何获取的 ...

mini.ux.MultiFile = function () {
    mini.ux.MultiFile.superclass.constructor.call(this);
    this.files = [];
    this.initControls();
    this.initEvents();

}

mini.extend(mini.ux.MultiFile, mini.Panel, {
    title: "上传",
    showHeader: false,
    showToolbar: false,
    showFooter: false,
    showCloseButton: false,
    showCollapseButton: false,
    width: "99.5%",
    height: 120,
    required: false,
    uiCls: "mini-multifile",

    initControls: function () {
        ......
        ......      
        mini.parse(this.el);
        alert(this.id);
        ......
        ......     
    },

获取this.id主要也是想用变通的方式得到页面控件上的required信息,从而实现通过预先写控件属性来控制必填
<div id="files1" class="mini-multifile" required="true" style="border-bottom:0;padding:0px;height:50%"></div>

Rank: 8Rank: 8

地板
发表于 2013-3-7 14:15:45 |只看该作者
cola_unique 发表于 2013-3-7 13:49
mini.ux.MultiFile = function () {
    mini.ux.MultiFile.superclass.constructor.call(this);
    thi ...

你需要获得自己创建的控件的ID还是什么

Rank: 2

5#
发表于 2013-3-7 14:34:15 |只看该作者
factory 发表于 2013-3-7 14:15
你需要获得自己创建的控件的ID还是什么

想获得<div id="files1" class="mini-multifile" required="true" style="border-bottom:0;padding:0px;height:50%"></div>
以上红字部分自己定义的属性

Rank: 2

6#
发表于 2013-3-7 17:24:18 |只看该作者
factory 发表于 2013-3-7 14:15
你需要获得自己创建的控件的ID还是什么

主要不清楚如何创建自定义控件的属性,并且这些属性可以通过设置前台页面控件来起作用。

Rank: 9Rank: 9Rank: 9

7#
发表于 2013-3-7 22:01:49 |只看该作者
自定义HTML标签参考: demo/diyclass/OrderItemGrid.js里面的getAttrs方法。
另外,id在构造器中时,是默认生成的,之后,才是外部设置的内容。

Rank: 2

8#
发表于 2013-3-8 10:35:37 |只看该作者
niko 发表于 2013-3-7 22:01
自定义HTML标签参考: demo/diyclass/OrderItemGrid.js里面的getAttrs方法。
另外,id在构造器中时,是默认 ...

根据getAttrs还是获取不到页面控件上的自定义属性,还有什么方法吗?

Rank: 8Rank: 8

9#
发表于 2013-3-8 11:29:28 |只看该作者
cola_unique 发表于 2013-3-8 10:35
根据getAttrs还是获取不到页面控件上的自定义属性,还有什么方法吗?

你参考下OrderItemGrid.js
他里面的就是通过getAttrs 自定义添加了 url 的标签

Archiver|普加软件

GMT+8, 2024-11-27 17:54 , Processed in 1.041393 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部