jQuery MiniUI

标题: datagrid中combobox数据变化如何显示 [打印本页]

作者: tangkechu    时间: 2013-4-11 18:27:37     标题: datagrid中combobox数据变化如何显示

初始显示
<div id="datagrid1" class="mini-datagrid" style="width:95%;height:280px;"  idField="id"    showFooter='false'  allowCellEdit="true" allowCellSelect="true" multiSelect="true"  editNextOnEnterKey="true">  
         <div property="columns">
             <div field="gtable" width="100" allowSort="true"  type="comboboxcolumn"   >表
                <input id="gitable" property="editor" class="mini-combobox" style="width:100%;"
                     data="movetable"  textField="text" valueField="id" value="111111" />   
             </div>            
             <div field="birthday" width="100" allowSort="true"  type="comboboxcolumn" >列
                  <input property="editor" class="mini-combobox" style="width:100%;"  />  
             </div>   
</div>

初始设置

<script type="text/javascript">
//拖动的表
var movetable = [{"id":"test","text":"test"}];
var grid = mini.get("datagrid1");
grid.setTotalCount(100);
grid.setData([]);
for (var i = 0; i < 1; i++) {
             var newRow = { name: "New Row" };
             grid.addRow(newRow, i);
         }
< /script>

事件触发后
<script type="text/javascript">

   var strSysTable ="测试";

var tabobj = {};
tabobj.id = strSysTable;
tabobj.text = strSysTable;
movetable.push(tabobj);
var index = grid.getData().length
var newRow = { gtable: "new Row" };
grid.addRow(newRow, index);
var data = grid.getData();

mini.get("gitable").setData(movetable);
mini.get("gitable").load(movetable);
< /script>

数据可以绑定在下拉框中,
[attach]1572[/attach]
当点击时 无法显示
[attach]1573[/attach]
谢谢 版主帮我瞧瞧 看能解决不

作者: factory    时间: 2013-4-12 09:05:51

你把mini.get("gitable").load(movetable);去掉试试

我说了load()的参数是url,是一个地址
不是一个数组
作者: tangkechu    时间: 2013-4-12 09:25:28

factory 发表于 2013-4-12 09:05
你把mini.get("gitable").load(movetable);去掉试试

我说了load()的参数是url,是一个地址

我不和后台交互  只是前台处理 所以真的没有url    我只是想得到 事件中的 数据
  事件第一次触发时候 可以得到 第一次传来的值   第二次也可以得到 就是点击下拉框 不显示了   我跟踪了下   是我 grid.addRow(newRow, index);这个原因   请问 怎么才可以全部得到呢  等一会我做个小实例  传上来  麻烦您帮我再瞧瞧
作者: factory    时间: 2013-4-12 09:44:15

tangkechu 发表于 2013-4-12 09:25
我不和后台交互  只是前台处理 所以真的没有url    我只是想得到 事件中的 数据
  事件第一次触发时候 可 ...

好的
作者: tangkechu    时间: 2013-4-12 10:23:41

factory 发表于 2013-4-12 09:44
好的

<!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 runat="server">
    <title></title>
    <link href="css/css.css" rel="stylesheet" type="text/css" />
    <script src="scripts/boot.js" type="text/javascript"></script>
</head>
<body>
        <input id="Submit1" type="submit" value="测试按钮" onclick="submitform();" />
        <br />
        <div id="datagrid1" class="mini-datagrid" style="width: 95%; height: 280px;" idfield="id"
            showfooter='false' allowcelledit="true" allowcellselect="true" multiselect="true"
            editnextonenterkey="true" />
        <div property="columns">
            <div field="gtable" width="100"  type="comboboxcolumn"  >
                表
                <input id="gitable" property="editor" class="mini-combobox"  textField="text" valueField="id" data="movetable"  />
            </div>
            <div field="gcols" width="100" type="comboboxcolumn">
                列
                <input property="editor" class="mini-combobox" />
            </div>
        </div>
    </div>
    </body>
</html>

    <script type="text/javascript" language="javascript">

        mini.parse();
        
        //表初始数据
        var movetable = { "id": "test", "text": "test" }
        //得到表格
        var grid = mini.get("datagrid1");
        //增加5条空白数据
        for (var i = 0; i < 2; i++) {
            var newRow = { name: "New Row" };
            grid.addRow(newRow, i);
        }


        //测试按钮事件
        function submitform() {
            var table = mini.get("gtable")
            //增加5条空白数据
            for (var i = 0; i < 2; i++) {
                var newRow = { name: "New Row" };
                grid.addRow(newRow, i);
            }
            //事件触发后得到的数据(这里测试使用随机数)
            var strSysTable = Math.random() * 10;
            var testt = { "id": strSysTable, "text": "test" + strSysTable }
            movetable = testt;


            //alert("dd");
        }

    </script>

作者: tangkechu    时间: 2013-4-12 10:24:18

tangkechu 发表于 2013-4-12 10:23

           ...

到最后了  就不知道怎么绑定了 谢谢帮我瞧瞧啊
作者: tangkechu    时间: 2013-4-12 10:45:35

tangkechu 发表于 2013-4-12 10:24
到最后了  就不知道怎么绑定了 谢谢帮我瞧瞧啊

版主 帮我瞧瞧啊  麻烦您了
作者: tangkechu    时间: 2013-4-12 11:07:57

tangkechu 发表于 2013-4-12 10:45
版主 帮我瞧瞧啊  麻烦您了

版主 帮我瞧瞧    在线等
作者: factory    时间: 2013-4-12 11:30:43

tangkechu 发表于 2013-4-12 11:07
版主 帮我瞧瞧    在线等

我看下你的代码
作者: factory    时间: 2013-4-12 11:35:42

tangkechu 发表于 2013-4-12 11:07
版主 帮我瞧瞧    在线等

你的下拉框的数据是如何加载过来的?url?还是通过编辑时候的setData()给combobox?
作者: tangkechu    时间: 2013-4-12 13:31:34

factory 发表于 2013-4-12 11:30
我看下你的代码

代码在5楼
作者: tangkechu    时间: 2013-4-12 13:32:17

factory 发表于 2013-4-12 11:35
你的下拉框的数据是如何加载过来的?url?还是通过编辑时候的setData()给combobox? ...

没有url  是setData()
作者: tangkechu    时间: 2013-4-12 14:19:52

版主 帮我瞧瞧啊  麻烦您了
作者: tangkechu    时间: 2013-4-12 14:54:49

版主 帮我瞧瞧啊  麻烦您了
作者: niko    时间: 2013-4-12 20:32:59

1.将 type="comboboxcolumn"去掉
2.设置列的displayField
作者: tangkechu    时间: 2013-4-13 14:43:10

谢谢  niko    还是管理员厉害  呵呵   一语点破天机




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