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

QQ登录

只需一步,快速开始

查看: 2050|回复: 4

[结贴] DATA教程问题

[复制链接]

8

主题

24

帖子

58

积分

初级会员

Rank: 2

积分
58
QQ
发表于 2016-1-19 00:00:58 | 显示全部楼层 |阅读模式
请问这个教程里面 http://doc.wex5.com/?p=3158

data.setValue('fWeight','200') 这句是影响哪行? 这种看起来没有指定行的默认是哪行呢
=============
二、Data的列

Data组件的列定义
列定义包括:name、type、label,

name:列的唯一标识

type:列的数据类型,取自范围:String、Integer、Long、Float、Double、Decimal、Boolean、Date、Time、DateTime

label:列显示名称,当没有定义时,label为name

另外Data组件上还有一个重要的属性idColumn,用来指定Data数据中行ID的表示列,可以理解为关系型数据库中表上定义的key关系

    <div xid="fruitData" component="$UI/system/components/justep/data/data"
      idColumn="fID" autoLoad="true">
      <column label="ID" name="fID" type="String"/>
      <column label="显示名称" name="fName" type="String"/>
      <column label="重量" name="fWeight" type="Double"/>
      <data>
        [{"fName":"苹果","fID":"apple","fWeight":100},
         {"fName":"梨","fID":"pear","fWeight":80},
         {"fName":"西瓜","fID":"watermelon","fWeight":1800},
         {"fName":"香蕉","fID":"banana","fWeight":3600}]
      </data>
    </div>
相关的属性和API:

属性:
Data.defCols:存放列的定义信息
Data.idColumn
代码示例:

  var data = this.comp('fruitData');
  var IDColDef = data.defCols[data.idColumn];//获取ID列的定义
  alert(data.idColumn+' label:'+IDColDef.label+',name:'+IDColDef.name+',type:'+IDColDef.type);
取值赋值相关API:
Data.getValue(col,row);
Data.setValue(col,value,row);
Row.val(col,value);
获取数据时会根据列定义进行数据的转换,目前支持string—>Integer、Long、Float、Double、Decimal、Date、Time、DateTime转化,当转换失败时返回Data.ErrorValue对象,通过ErrorValue.value可以获取原值

代码示例:

  var data = this.comp('fruitData');
  //给fWeight设置字符数据
  data.setValue('fWeight','200');
  var v = data.getValue('fWeight');
  alert('fWeight'+typeof(v)+')'+v);
  //给fWeight设置字符数据'abc'非有效的数值字符串
  data.setValue('fWeight','abc');
  v = data.getValue('fWeight');
  alert('fWeight:'+v+','+v.value);

8

主题

24

帖子

58

积分

初级会员

Rank: 2

积分
58
QQ
 楼主| 发表于 2016-1-19 08:44:34 | 显示全部楼层
顶一下,各位大大帮忙看看
回复 支持 反对

使用道具 举报

发表于 2016-1-19 11:17:13 | 显示全部楼层
请问字段 fWeight 是什么类型的?如果是数字类型的,那么赋值字符串肯定是会报错的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

8

主题

24

帖子

58

积分

初级会员

Rank: 2

积分
58
QQ
 楼主| 发表于 2016-1-19 12:13:42 | 显示全部楼层
倒不是关心字段类型哈,哪怕就是数字赋值,那影响哪行数据
回复 支持 反对

使用道具 举报

发表于 2016-1-19 15:32:40 | 显示全部楼层
finalgoal 发表于 2016-1-19 12:13
倒不是关心字段类型哈,哪怕就是数字赋值,那影响哪行数据

你看下api文档, setValue (string col, object value, Row row)
有三个参数,第一个是列名,第二个是值,第三个是行对象,如果第三个参数不填写,默认表示修改当前行数据,就是你当前行显示那条数据就改变的哪行数据的值!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-17 17:51 , Processed in 0.073798 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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