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

QQ登录

只需一步,快速开始

查看: 3175|回复: 12

[结贴]

[复制链接]

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
发表于 2017-6-15 16:20:14 | 显示全部楼层 |阅读模式
本帖最后由 qinrui111 于 2017-6-15 16:26 编辑

判断在主页选择,加入购物车,如何选择同样的物品。row.length长度应该等于1 但是提示=0
当前行row中的值相乘得到的结果是0.要么就是值没有传过来

如何把fCount alert出来

如何把fCount alert出来

waimai.rar

118.75 KB, 下载次数: 64

这是附件

发表于 2017-6-15 16:28:46 | 显示全部楼层
row.length 是什么??
如果是获取data总有几行数据!应该是data.count()
如果是根据类型获取行数据
可以使用data.find

  1. var rows = this.comp('mainData').find(['fName','fAge'],['李',18]);

  2. alert(rows.length)
复制代码
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
 楼主| 发表于 2017-6-15 16:32:32 | 显示全部楼层
var row = event.bindingContext.$object;
                var cartData = this.comp("cartData").find("fFoodID", [row.getID()]);
                if(cartData.length == 0){
                this.comp("cartData").newData({
                                //index : 0,
                                defaultValues : [ {
                                        "fFoodID" : row.getID(),
                                        "fName" : row.val("fName"),
                                        "fPrice" : row.val("fPrice"),
                                        "fCount" : 1
                                }]
                        });
                }else{
                        alert("跟单");
                }
        }

我是这样写的。但是length永远都是0
回复 支持 反对

使用道具 举报

发表于 2017-6-15 16:44:29 | 显示全部楼层
qinrui111 发表于 2017-6-15 16:32
var row = event.bindingContext.$object;
                var cartData = this.comp("cartData").find("fFoodID", [row. ...

是list的点击事件中写的吗??
建议debugger调试一下
获取当前行对象是否正确
row.getID()  值 是多少呢??

http://docs.wex5.com/wex5-ui-question-list-2019/

点击事件必须在class= x-list-template 的子节点中设置!否则无法点击事件得到当前行对象

qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
 楼主| 发表于 2017-6-15 16:48:15 | 显示全部楼层
你可以帮我看下压缩包的问题么
row.getID()获取出来的编号
回复 支持 反对

使用道具 举报

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
 楼主| 发表于 2017-6-15 16:54:18 | 显示全部楼层
  1. <ul class="x-list-template" xid="listTemplateUl1">
  2.    <li xid="li1"><div xid="div7" class="media"><div xid="div9" class="media-left" style="height:84px;width:131px;"><img src="" alt="" xid="image1" style="height:84px;width:119px;" bind-attr-src=' $model.getImgUrl( $object.val("fImage"))'></img></div><div xid="div8" class="media-body"><a component="$UI/system/components/justep/button/button" class="btn btn-link btn-icon-top pull-right x-card" label="点餐" xid="button" style="border-style:dashed dashed dashed dashed;border-width:medium medium medium medium;" onClick="buttonClick">
  3.    <i xid="i14"></i>
  4.    <span xid="span10">点餐</span></a><div component="$UI/system/components/justep/output/output" class="x-output" xid="output4" bind-ref="ref('fName')"></div>
  5.   <div component="$UI/system/components/justep/output/output" class="x-output" xid="output5" bind-ref="ref('fPrice')" style="width:337px;"></div>
  6.   <div component="$UI/system/components/justep/output/output" class="x-output" xid="output6" bind-ref="ref('fDescription')"></div>
  7.   </div></div>
  8.   </li>
复制代码
回复 支持 反对

使用道具 举报

发表于 2017-6-15 16:55:24 | 显示全部楼层
qinrui111 发表于 2017-6-15 16:48
你可以帮我看下压缩包的问题么
row.getID()获取出来的编号

应该写成
this.comp("cartData").find(["fFoodID"], [row.getID()]);

少了大括号
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
 楼主| 发表于 2017-6-15 17:00:44 | 显示全部楼层
  1. var cartData = this.comp("cartData").find(["fFoodID"], [row.getID()]);
复制代码


点击第一次没有值,点击第二次还是没有值,如果有debugger调试,他执行一遍就结束了。
回复 支持 反对

使用道具 举报

发表于 2017-6-15 17:10:19 | 显示全部楼层
qinrui111 发表于 2017-6-15 17:00
点击第一次没有值,点击第二次还是没有值,如果有debugger调试,他执行一遍就结束了。 ...

你的设计好像有问题吧!
cartData 中 的id列是 fFoodID ,
那么只能加一次了
第二次添加的时候!ID重复了!就不对了!
建议cartData 上面再定义个id列!不要使用 fFoodID


row.getID() 的值是多少??
你确定一下  cartData  中的fFoodID  是否有等于这个值的行??
可以data.each 打印每一行数据
调试看下结果吧
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

50

主题

111

帖子

257

积分

中级会员

Rank: 3Rank: 3

积分
257
QQ
 楼主| 发表于 2017-6-15 17:20:37 | 显示全部楼层
不用fFoodID  重新编辑一列   
var rows = this.comp("cartData").find(["fID"], [row.getID()]);


rows中只有row.getID()有值。fID没有值为空
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 01:48 , Processed in 0.077939 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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