起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 一九四七

[结贴] js调用insert()新增的数据在保存和删除时候都报错

[复制链接]

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 16:59:25 | 显示全部楼层
jishuang 发表于 2014-4-24 16:47
先把上面的代码简化了,直接用一个按钮去调用写的insert相关的逻辑看看

写上面的代码主要是想简化数据录入,按回车直接进入下一行,没有下一行就新增一行,如果用按钮每次都得点击按钮,数据量大,操作器起很不方便,上面的代码主要是判断单元格的位置,改变表结构的就只有insert(justep.Utils.randomString(),tb.childNodes.length,{version:0})函数,这样用对吗?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36174
发表于 2014-4-24 17:05:38 | 显示全部楼层
一九四七 发表于 2014-4-24 16:59
写上面的代码主要是想简化数据录入,按回车直接进入下一行,没有下一行就新增一行,如果用按钮每次都得点 ...

不是说让你逻辑用按钮实现,现在不是说新增报错吗?那就把新增的用按钮调用不是方便跟踪问题吗,insert的具体介绍可以参考API中的说明
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 17:06:35 | 显示全部楼层
jishuang 发表于 2014-4-24 16:47
先把上面的代码简化了,直接用一个按钮去调用写的insert相关的逻辑看看

刚刚试了用按钮单独调用insert也出现相同的错
  1. mainActivity.trigger1Click = function(event){
  2.         var tb=document.getElementById("grdMain").childNodes[1].childNodes[0].childNodes[0];
  3.         justep.xbl("dataMain").insert(justep.Utils.randomString(),tb.childNodes.length);
  4. };
复制代码
我觉得是insert使用错了,不知道insert怎么使用
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36174
发表于 2014-4-24 17:16:48 | 显示全部楼层
document.getElementById("grdMain").childNodes[1].childNodes[0].childNodes[0];

这个取的是什么?


data的insert相关的参数参考
insert.png


可以参考
var array = ["全部","全部"];
justep.xbl('dataDEMO_Custemor').insert('all', 0, array);
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 17:20:46 | 显示全部楼层
grid编译为html后tbody
回复 支持 反对

使用道具 举报

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 17:22:10 | 显示全部楼层
jishuang 发表于 2014-4-24 17:16
document.getElementById("grdMain").childNodes[1].childNodes[0].childNodes[0];

这个取的是什么?

grid编译为html后tbody,新增没有问题,就是新增后的行无法删除页无法保存
回复 支持 反对

使用道具 举报

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 17:26:11 | 显示全部楼层
jishuang 发表于 2014-4-24 17:16
document.getElementById("grdMain").childNodes[1].childNodes[0].childNodes[0];

这个取的是什么?

这个array应该包含哪些字段?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36174
发表于 2014-4-24 17:29:26 | 显示全部楼层
如下,测试没问题
  1. var data = justep.xbl("dataMain");
  2.         data.insert(justep.Utils.randomString(),0,{fName:'aa',fCode:'001'});
  3.         var rowid = data.getCurrentID();
  4.         data.setState(rowid, "new");
  5.         data.saveData();
复制代码
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

14

主题

74

帖子

124

积分

初级会员

Rank: 2

积分
124
QQ
 楼主| 发表于 2014-4-24 17:37:07 | 显示全部楼层
jishuang 发表于 2014-4-24 17:29
如下,测试没问题

加上这个 data.setState(rowid, "new")就好了,为什么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36174
发表于 2014-4-24 17:48:40 | 显示全部楼层
一九四七 发表于 2014-4-24 17:37
加上这个 data.setState(rowid, "new")就好了,为什么?

insert只是前端新增数据,数据不设置状态是是不能保存到数据库中的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-7 23:32 , Processed in 0.070584 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表