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

QQ登录

只需一步,快速开始

查看: 6895|回复: 9

[结贴] attachmentSimple图片轮播后无法删除

[复制链接]

16

主题

54

帖子

178

积分

初级会员

Rank: 2

积分
178
QQ
发表于 2017-3-8 09:30:32 | 显示全部楼层 |阅读模式
本帖最后由 1451680250 于 2017-3-8 09:37 编辑

将attachmentSimple组件  <div class="x-attachment-item x-item-other"  xid="div10"  data-bind="click:$model.previewOrRemoveItem.bind($model),style:{backgroundImage:($model.previewPicture.bind($model,$object))()}">
data-bind="style:{backgroundImage:($model.previewPicture.bind($model,$object))()}" ,给这个div添加单击事件可以弹框实现图片轮播,替换了组件自带的previewOrRemoveItem预览图片的方法,这样的话,点击 减号-红叉,图无法删除,而是弹框变为查看图片了,有没有封装的删除图片的方法?
         



91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2017-3-8 11:19:58 | 显示全部楼层
给这个div添加单击事件可以弹框实现图片轮播具体怎么添加的,如果不要平台默认的点击图片的实现,可以调用自己的,不要在div上添加
参考http://docs.wex5.com/bex5-ui-question-list-10175/
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

16

主题

54

帖子

178

积分

初级会员

Rank: 2

积分
178
QQ
 楼主| 发表于 2017-3-8 13:44:11 | 显示全部楼层
当前界面自定义方法体代码:var mainData  = this.comp("mainData");
            var imgs = mainData.getValue("fComplaintPic", mainData.getCurrentRow());
            this.comp("winImgDlg1").open({data:{"imgs":imgs,"fid":mainData.getCurrentRowID()}});
弹框后用carousel组件实现轮播,查看图片这个没问题, 就是删除不了图片
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2017-3-8 14:16:36 | 显示全部楼层
删除是在attachmentSimple组件上操作的,跟弹出没关系
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

16

主题

54

帖子

178

积分

初级会员

Rank: 2

积分
178
QQ
 楼主| 发表于 2017-3-8 14:20:30 | 显示全部楼层
本帖最后由 1451680250 于 2017-3-8 15:02 编辑

现在将attachmentSimple组件 修改成了 <div class="x-attachment-item x-item-other"  xid="div10"  
data-bind="click:$model.getModel().preview.bind($model.getModel(),$model,$object),style:{backgroundImage:($model.previewPicture.bind($model,$object))()}">
Model.prototype.preview = function(owner,event) {//debugger;
                var realFileName = event.realFileName.get();
                var storeFileName = event.storeFileName.get();
        //        if(owner.$state.latestValue == "remove"){//删除图片
                         //怎样删除当前点击的图片        
        //        }else{//轮播查看图片
                        var mainData  = this.comp("mainData");
                    var imgs = mainData.getValue("fComplaintPic", mainData.getCurrentRow());
                    this.comp("winImgDlg1").open({data:{"imgs":imgs,"fid":mainData.getCurrentRowID()}});
        //        }
};

情况1:有加减号时,可正常弹框查看图片,如图1.1
情况2:点击减号后,点击红叉,还是弹框查看图片图1.1,删除不了图片****

1.1

1.1

情况1

情况1

情况2

情况2
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2017-3-8 15:19:55 | 显示全部楼层
参考
  1.         Model.prototype.preview = function(owner,event) {
  2.                 var state = owner.$state.get();
  3.                 var realFileName = event.realFileName.get();
  4.                 var storeFileName = event.storeFileName.get();
  5.                 var ownerID = owner.getOwnerID();
  6.                 var operateType = 'browse';
  7.                 var url = '$UI/system/service/doc/common/simpleFileStore.j?realFileName=' + realFileName + '&storeFileName=' + storeFileName + '&ownerID=' + ownerID + '&operateType=' + operateType;
  8.                 if(state == 'remove'){
  9.                         owner.deleteFile(storeFileName,ownerID)
  10.                 }
  11.                 else{
  12.                         window.open(require.toUrl(url));
  13.                 }
  14.         }
复制代码
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

16

主题

54

帖子

178

积分

初级会员

Rank: 2

积分
178
QQ
 楼主| 发表于 2017-3-8 15:29:04 | 显示全部楼层
本帖最后由 1451680250 于 2017-3-8 16:25 编辑

万分感谢, owner.deleteFile(storeFileName,ownerID)要的就是这句代码,因为不了解平台封装的删图片的方法,不知道调哪个
可以结贴了


回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2017-3-8 16:29:16 | 显示全部楼层
不同的问题请分开发帖

div绑定click事件直接用on方法
  1.                 $(this.getElementByXid("div20")).on('click',function(event){
  2.                   //自己的click事件代码
  3.                 });
复制代码
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

16

主题

54

帖子

178

积分

初级会员

Rank: 2

积分
178
QQ
 楼主| 发表于 2017-3-8 17:01:51 | 显示全部楼层
jishuang 发表于 2017-3-8 16:29
不同的问题请分开发帖

div绑定click事件直接用on方法

$(this.getElementByXid("div34")).bind("click", null, owner.previewOrRemoveItem(event));
这样也可以删除图片
回复 支持 反对

使用道具 举报

8

主题

50

帖子

122

积分

初级会员

Rank: 2

积分
122
QQ
发表于 2018-8-15 17:32:15 | 显示全部楼层
1451680250 发表于 2017-3-8 14:20
现在将attachmentSimple组件 修改成了
Model.prototype.preview = function(owner,event) {//debugger;
   ...

请问黄色部分的click是怎么修改的?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-25 00:13 , Processed in 0.058068 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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