jQuery MiniUI

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

combobox 遍历和自定义属性 [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2014-9-28 09:40:53 |只看该作者 |倒序浏览
页面上有几十个combobox,都需要从数据字典加载数据,我在Input 上加了个自定义属性,加载的时候我想遍历页面上所有的combobox 获取combobox的id和自定义数据,但是现在 不知道如何遍历combobox

Rank: 8Rank: 8

沙发
发表于 2014-9-28 09:52:38 |只看该作者
可以给combobox设置同name,可以用mini.getsbyName(name)获取所有该name的控件

Rank: 1

板凳
发表于 2014-9-28 09:57:09 |只看该作者
dforce 发表于 2014-9-28 09:52
可以给combobox设置同name,可以用mini.getsbyName(name)获取所有该name的控件

额..不能获取自定义的属性么?有没有办法遍历呢所有的combobox呢?

Rank: 8Rank: 8

地板
发表于 2014-9-28 09:59:41 |只看该作者
396708323@qq.co 发表于 2014-9-28 09:57
额..不能获取自定义的属性么?有没有办法遍历呢所有的combobox呢?

1 自定义属性用data-options={aaa:""}
2 没有遍历所有combobox的方法,设置成同name,用mini.getsbyName(name)获取所有同名控件

Rank: 1

5#
发表于 2014-9-28 10:09:47 |只看该作者
dforce 发表于 2014-9-28 09:59
1 自定义属性用data-options={aaa:""}
2 没有遍历所有combobox的方法,设置成同name,用mini.getsbyName( ...

额 谢谢您的解答  我用其他方法试试

Rank: 8Rank: 8

6#
发表于 2014-9-28 10:31:21 |只看该作者
396708323@qq.co 发表于 2014-9-28 10:09
额 谢谢您的解答  我用其他方法试试

或者你最外面包一层<div id="form1"
可以用
var form=new mini.Form("form1")
var controls=form.getFields()     //可获取form内所有miniui表单控件
control【i】.type=="combobox"  //可遍历判断type获取所有combobox控件

Rank: 1

7#
发表于 2014-9-28 11:39:02 |只看该作者
dforce 发表于 2014-9-28 10:31
或者你最外面包一层

哦 还能酱紫呀..介不介意在回答我一个问题呢?我通过另外的途径实现了遍历的功能,现在从后台获取到了json数据,如何绑定给combobox
//数据字典
var load_sjzd = function (jsonstr) {
    $.ajax({
        url: '../http/demo/demo.aspx?ywlb=sjzd&&data=' + jsonstr + '&&t=' + new Date(),
        dataType: 'json',
        timeout: 5000,
        type: 'post',
        success: function (result) {
            $(result).each(function () {
                $("#" + this.id).combobox({
                    data:this.data
                });
            });
        },
        error: function (result, status) {
            mini.alert(result);
        },
        complete: function (XHR, status) {
            XHR = null;
        }
    });
}
这样写不行,请问是如何绑定上去的呢,直接在页面通过url不行,那样每个控件都要与服务器交互一次 太影响性能

Rank: 8Rank: 8

8#
发表于 2014-9-28 11:50:55 |只看该作者
396708323@qq.co 发表于 2014-9-28 11:39
哦 还能酱紫呀..介不介意在回答我一个问题呢?我通过另外的途径实现了遍历的功能,现在从后台获取到了 ...

用form
form.setData(data)

Rank: 1

9#
发表于 2014-9-28 12:11:00 |只看该作者
dforce 发表于 2014-9-28 11:50
用form
form.setData(data)

[
        {"id":"com1","data":[
                                                        {"id":"110804351","text":"1"},
                                                        {"id":"110804335","text":"2"},
                                                        {"id":"110804334","text":"3"}
                                                        ]
        },
        {"id":"com2","data":[
                                                        {"id":"0000000000000207","text":"a"},
                                                        {"id":"110804349","text":"b"},
                                                        ]
        }
]这个是我生成的json  我想通过遍历依次加载combobox,com1是combobox的id,data是combobox的数据,怎么绑定数据呢?因为公司准备购买miniui开发下个产品,所以目前在进行功能性的测试,还望赐教

Rank: 8Rank: 8

10#
发表于 2014-9-28 13:09:18 |只看该作者
396708323@qq.co 发表于 2014-9-28 12:11
[
        {"id":"com1","data":[
                                                        {"id":"110804351","text":"1"},

都有id了,那简单
  1. var data=[
  2.         {"id":"com1","data":[
  3.                                                         {"id":"110804351","text":"1"},
  4.                                                         {"id":"110804335","text":"2"},
  5.                                                         {"id":"110804334","text":"3"}
  6.                                                         ]
  7.         },
  8.         {"id":"com2","data":[
  9.                                                         {"id":"0000000000000207","text":"a"},
  10.                                                         {"id":"110804349","text":"b"},
  11.                                                         ]
  12.         }]
  13. mini.parse()
  14. for(var i=0;i<data.length;i++){
  15.     mini.get(data[i].id).setData(data[i].data);
  16. }
复制代码

Archiver|普加软件

GMT+8, 2024-11-27 06:20 , Processed in 1.044730 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部