jQuery MiniUI

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

dataGrid 的 celleditenter 事件无效 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2016-4-6 15:53:13 |只看该作者 |倒序浏览
grid.set({id:"gameGrid_"+gameId,showPager:false, allowCellSelect:true,allowCellEdit:true,columns:columnList});
grid.on("celleditenter",GoUpdate);//按回车时发生
pane.setBody(grid);


//单元格按回车时发生
function GoUpdate(a)
{
        mini.alert("需要提交");
}

经测试.完全没有触发 GoUpdate 方法

Rank: 8Rank: 8

沙发
发表于 2016-4-6 16:03:03 |只看该作者
请提供完整页面重现问题

Rank: 3Rank: 3

板凳
发表于 2016-4-6 17:22:43 |只看该作者
felt 发表于 2016-4-6 16:03
请提供完整页面重现问题

本地开发的.全是js控制的html 你们自己试下不就清楚了.我用了各种方式的确是无效的

Rank: 8Rank: 8

地板
发表于 2016-4-6 17:26:19 |只看该作者
gaide168 发表于 2016-4-6 17:22
本地开发的.全是js控制的html 你们自己试下不就清楚了.我用了各种方式的确是无效的 ...

我们本地测试过有效,所以才让你提供

Rank: 3Rank: 3

5#
发表于 2016-4-6 17:37:16 |只看该作者
本帖最后由 gaide168 于 2016-4-6 20:35 编辑
felt 发表于 2016-4-6 17:26
我们本地测试过有效,所以才让你提供
  1. var dataMode; //add 或 update
  2. var superId;//如果是add 模式,请附值
  3. var userId;//如果是更新模式请附值
  4. var panKou = [{id:"A",text:"A"},{id:"B",text:"B"},{id:"C",text:"C"}]
  5. var userState = [{
  6.         id: 1,
  7.         text: "正常"
  8. }, {
  9.         id: 2,
  10.         text: "停押"
  11. }, {
  12.         id: 3,
  13.         text: "停用"
  14. }, {
  15.         id: 4,
  16.         text: "黑名单"
  17. }]; //用户所有状态

  18. var GameType;//彩种

  19. var gridList = new Array();//存放加载到窗口的数据表格列表

  20. //为用户做更新准备
  21. function BeginReady()
  22. {
  23.         //先随便来几个测试数据
  24.         dataMode = "update";
  25.         userId =1;
  26.        
  27.         var table = document.getElementById("userInfo");
  28.         var tr = document.createElement("tr");//产生一个行
  29.         tr.innerHTML = "<td> <input  labelField=\"true\" label=\" 姓名:\" id=\"RealName\"  name=\"RealName\" class=\"mini-textbox\" required=\"true\" /></td>"+
  30.                                         "<td> <input  labelField=\"true\" label=\"账号:\" id=\"LoginName\"  name=\"LoginName\" class=\"mini-textbox\" required=\"true\" /></td>"+
  31.                                         "<td> <input  labelField=\"true\" label=\"密码:\" id=\"Pwd\"  name=\"pwd\" class=\"mini-password\" required=\"true\" /></td>"+
  32.                                         "<td> <input  labelField=\"true\" label=\"确认密码:\" id=\"AgainPwd\"   class=\"mini-password\" required=\"true\" /></td>";
  33.         table.appendChild(tr);
  34.        
  35.         var tr2 = document.createElement("tr");
  36.         tr2.innerHTML ="<td><input id=\"CreditMoney\" labelField=\"true\" label=\"信用额度:\" name=\"CreditMoney\" class=\"mini-spinner\" value=\"22\" minValue=\"10\" maxValue=\"50\" /></td> "+
  37.                                         "<td><input id=\"PlanKou\" labelField=\"true\" label=\"  所属盘口:\" name=\"PlanKou\"  class=\"mini-combobox\" textField=\"text\" valueField=\"id\" /></td>"+
  38.                                         "<td><input id=\"StateId\" labelField=\"true\" label=\"  用户状态:\" name=\"StateId\"   class=\"mini-combobox\" textField=\"text\" valueField=\"id\" /></td>"+
  39.                                         "<td>走飞设定: <input id=\"ZouFeiToSuper\" style=\"margin-left:50px;\"  name=\"ZouFeiToSuper\" class=\"mini-checkbox\" text=\"允许走飞\" value=\"true\" trueValue=\"true\" falseValue=\"value\" /></td>";

  40.         table.appendChild(tr2);
  41.        
  42.         var tr3 = document.createElement("tr");
  43.         tr3.innerHTML ="<td>补货占成:<input  id=\"ZouFeiOccupy\" style=\"margin-left:50px;\" name=\"ZouFeiOccupy\" class=\"mini-checkbox\" text=\"允许占成\" value=\"true\" trueValue=\"true\" falseValue=\"value\" /></td>"+
  44.                                         "<td><input  id=\"BetRatio\" labelField=\"true\" label=\"下级占成(%):\" name=\"BetRatio\" class=\"mini-spinner\" value=\"22\" minValue=\"10\" maxValue=\"50\" /></td>";
  45.        
  46.         table.appendChild(tr3);
  47.           
  48.         mini.parse();
  49.        
  50.         mini.get("RealName").on( "valuechanged" , inputValueEv);
  51.         mini.get("LoginName").on( "valuechanged" , inputValueEv);
  52.     mini.get("Pwd").on( "valuechanged" , inputValueEv);
  53.         mini.get("BetRatio").on( "valuechanged" , inputValueEv);
  54.         mini.get("CreditMoney").on( "valuechanged" , inputValueEv);
  55.     mini.get("PlanKou").on( "valuechanged" , inputValueEv);
  56.     mini.get("StateId").on( "valuechanged" , inputValueEv);
  57.        
  58.         mini.get("PlanKou").set({data:panKou});
  59.         mini.get("StateId").set({data:userState});
  60.        
  61.         var goUser = 0;
  62.         if(dataMode == "add")
  63.         {
  64.                 goUser = superId;
  65.         }
  66.         else if(dataMode == "update")
  67.         {
  68.                 goUser = userId;
  69.                
  70.         }else{
  71.                 mini.alert("无法判断的数据更新模式!");
  72.                 return;
  73.         }
  74.         if(goUser < 1)
  75.         {
  76.                 mini.alert("用户id不能小于1");
  77.                 return;
  78.         }
  79.         var postObj ={mode:"GetUserInfo",type:GameType,userid:goUser,getBall:true};
  80.        
  81.         GetJson(postObj,dataToBallGrid);
  82. }

  83. //将json 对像解析球号附值 到 设置中
  84. function dataToBallGrid(data) {
  85.         var jsonObj = PaseJson(data);
  86.         if (CheckResult(jsonObj))
  87.         {
  88.                 var from = new mini.Form("#formInfo");
  89.                 from.setData(jsonObj.UserInfo);//设置基本信息
  90.                
  91.                 if(jsonObj.UserBallConf != null)
  92.                 {
  93.                         var gameGroup = new Array();
  94.                         jsonObj.UserBallConf.forEach(function(a){
  95.                                 if(!gameGroup[a.GameId])
  96.                                 {
  97.                                         gameGroup[a.GameId] = new Array();
  98.                                 }
  99.                                 gameGroup[a.GameId].push(a);
  100.                         });
  101.                         gameGroup.forEach(function(group){
  102.                                 //先添加区域
  103.                                  var pane = new mini.Panel();
  104.                                  var gameId = group[0].GameId;
  105.                                  var gameStr =GetGameStr(gameId);
  106.                                  var groupName = group[0].GroupName;
  107.                                  var BallId =  group[0].GameBallId;
  108.                                  pane.set
  109.                                  ({
  110.                                          id:"pane_"+gameId,
  111.                                          className:"mini-panel",
  112.                                  
  113.                                          width:"100%",
  114.                                          title: gameStr,
  115.                                          showCollapseButton: true,
  116.                                  });
  117.                                 var grid = new mini.DataGrid();
  118.                                  var columnList = new Array();
  119.                                   // "IsGroup": true,
  120.                         //      "GameId": 4,
  121.                         //      "GroupName": "1~8单码",
  122.                         //      "id": 0,
  123.                         //      "UserId": 76,
  124.                         //      "SuperiorId": null,
  125.                         //      "GameBallId": 2,
  126.                         //      "MinBet": 2.00,
  127.                         //      "MaxBet": 100000.00,
  128.                         //      "SumMaxBet": 500000.00,
  129.                         //      "TuiShui_A": 0.75,
  130.                         //      "TuiShui_B": 0.73,
  131.                         //      "TuiShui_C": 0.7
  132.                                 columnList.push({ field:"GroupName", width: 120, headerAlign: "center", header: "", editor: { type: "textbox" } ,readOnly:true});
  133.                             columnList.push({field:"MinBet", width: 120, headerAlign: "center", header: "单注最低", editor: { type: "Spinner" ,allowLimitValue:false } });
  134.                             columnList.push({ field:"MaxBet", width: 120, headerAlign: "center", header: "单注最高", editor: { type: "Spinner",allowLimitValue:false   } });
  135.                             columnList.push({ field:"SumMaxBet", width: 120, headerAlign: "center", header: "单项最高", editor: { type: "Spinner",allowLimitValue:false } });
  136.                                 columnList.push({ field:"TuiShui_A", width: 120, headerAlign: "center", header: "A盘(%)", editor: { type: "Spinner",allowLimitValue:false  } });
  137.                                 columnList.push({ field:"TuiShui_B", width: 120, headerAlign: "center", header: "B盘(%)", editor: { type: "Spinner",allowLimitValue:false  } });
  138.                                 columnList.push({ field:"TuiShui_C", width: 120, headerAlign: "center", header: "C盘(%)", editor: { type: "Spinner" ,allowLimitValue:false } });
  139.                                
  140.                                 grid.set({id:"gameGrid_"+gameId,showPager:false, allowCellSelect:true,allowCellEdit:true,columns:columnList});
  141.                                 grid.on("celleditenter",GoUpdate);//按回车时发生
  142.                                 grid.on("cellendedit",inputValueEv);
  143.                                 grid.oncellvalidation = validaEv;
  144.                                 //grid.on("cellvalidation",validaEv)
  145.                                 gridList.push(grid);
  146.                                 pane.setBody(grid);
  147.                                
  148.                                
  149.                                 //循环每个彩种
  150.                                 group.forEach(function(ball)
  151.                                 {
  152.                                         ball.id = ball.GameBallId;
  153.                                                 grid.addRow(ball);
  154.                                 });
  155.                                 document.body.appendChild(pane.getEl());
  156.                                
  157.                                  
  158.                                 grid.accept();
  159.                         });
  160.                 }
  161.                
  162.                 mini.parse();
  163.                
  164.         }
  165. }
  166. function validaEv(a)
  167. {
  168.         a.isValid = false;
  169.         a.errorText = "错误测试";
  170.         console.log(JSON.stringify(a));
  171. }
  172. //输入框值改变
  173. function inputValueEv(a)
  174. {
  175.         //alert("改变");
  176.         //mini.alert("值改变");
  177. }

  178. //单元格按回车时发生
  179. function GoUpdate(a)
  180. {
  181.         mini.alert("需要提交");
  182. }
  183. function GetGridChanges()
  184. {
  185.         var result = new Array();
  186.         gridList.forEach(function(grid) {
  187.                
  188.                 var chinds = grid.getChanges("modified", true);
  189.                 chinds.forEach(function(value) {
  190.                        
  191.                         if (value.MinBet) {
  192.                                 var temp = "_" + "MinBet".GetSmallStr() + "=";
  193.                                 result.push(value.id + temp + value.MinBet);
  194.                         }
  195.                         if (value.MaxBet) {
  196.                                 var temp = "_" + "MaxBet".GetSmallStr() + "=";
  197.                                 result.push(value.id + temp + value.MaxBet);
  198.                         }
  199.                         if (value.SumMaxBet) {
  200.        
  201.                                 var temp = "_" + "SumMaxBet".GetSmallStr() + "=";
  202.                                 result.push(value.id + temp + value.SumMaxBet);
  203.                         }
  204.                         if (value.TuiShui_A) {
  205.        
  206.                                 var temp = "_" + "TuiShui_A".GetSmallStr() + "=";
  207.                                 result.push(  value.id + temp + value.TuiShui_A);
  208.                         }
  209.                         if (value.TuiShui_B) {
  210.        
  211.                                 var temp = "_" + "TuiShui_B".GetSmallStr() + "=";
  212.                                 result.push(  value.id + temp + value.TuiShui_B);
  213.                         }
  214.                         if (value.TuiShui_C) {
  215.        
  216.                                 var temp = "_" + "TuiShui_C".GetSmallStr() + "=";
  217.                                 result.push(value.id + temp + value.TuiShui_C);
  218.                         }
  219.                 });
  220.         });
  221.        
  222.         return result;
  223. }
复制代码
复制代码
今天发现不只是一个事件无效...包含验证的什么都无效!!!

Rank: 8Rank: 8

6#
发表于 2016-4-7 09:24:32 |只看该作者
本帖最后由 felt 于 2016-4-7 09:27 编辑
gaide168 发表于 2016-4-6 17:37
今天发现不只是一个事件无效...包含验证的什么都无效!!!

不要贴那么长的代码,可以上传文件
html代码,怎么只有js

Rank: 3Rank: 3

7#
发表于 2016-4-7 14:13:53 |只看该作者
felt 发表于 2016-4-7 09:24
不要贴那么长的代码,可以上传文件
html代码,怎么只有js

因为我的html 全是js写出来的....

Rank: 8Rank: 8

8#
发表于 2016-4-7 14:30:27 |只看该作者
gaide168 发表于 2016-4-7 14:13
因为我的html 全是js写出来的....

那请您请提供一个完整页面,引用了miniui.js,加上你的代码能运行看到结果

Rank: 3Rank: 3

9#
发表于 2016-4-7 14:54:19 |只看该作者
dforce 发表于 2016-4-7 14:30
那请您请提供一个完整页面,引用了miniui.js,加上你的代码能运行看到结果 ...

不用了.我用了 document.body.onkeydown 解决了..miniui.js 我是下载的最新版的.

Archiver|普加软件

GMT+8, 2024-9-30 14:34 , Processed in 1.074667 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部