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

QQ登录

只需一步,快速开始

查看: 4247|回复: 8

[结贴] html节点动态添加click绑定事件,事件执行异常

[复制链接]

52

主题

158

帖子

522

积分

高级会员

Rank: 4

积分
522
QQ
发表于 2019-1-16 10:52:48 | 显示全部楼层 |阅读模式
版本: 其它(帖子中说明) 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
参考http://doc.wex5.com/comp-base/#2.2帖子,为html标签动态添加了click事件,在点击a标签的时候,调用openfileClick事件,事件执行异常。

于是,我做了个测试,新增了个button组件,为button组件绑定onClick事件,事件也同样指向openfileClick,执行成功。
如下图:
1.png 2.png

后来发现,点击链接和点击按钮进去事件后,获取的event的值不一样啊。如下图:
3.png 4.png

事件体里的内容,就是通过fileApi把附件下载到客户端,同时打开客户端文件。

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2019-1-16 11:46:11 | 显示全部楼层
event不一样,你的js代码中也没有用到event啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

52

主题

158

帖子

522

积分

高级会员

Rank: 4

积分
522
QQ
 楼主| 发表于 2019-1-16 13:42:32 | 显示全部楼层
本帖最后由 yuyunyun051 于 2019-1-16 13:58 编辑
jishuang 发表于 2019-1-16 11:46
event不一样,你的js代码中也没有用到event啊

没有用到event,但是进入到fileApi.download方法的时候,执行的不一样啊。是不是跟a标签的click事件有关系呢。点击button按钮就可以正常的执行fileApi的download方法,点击a标签就执行不了。

用手机又调试了下,点击a标签,进入fileApi.js里面,alert("1");正常执行,alert("2");没有执行。
如下图: 5.png

说明window.requestFileSystem执行失败了,不明白什么原因。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2019-1-16 14:23:13 | 显示全部楼层
看requestFileSystem里面的参数是否都正确
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

52

主题

158

帖子

522

积分

高级会员

Rank: 4

积分
522
QQ
 楼主| 发表于 2019-1-16 14:37:44 | 显示全部楼层
jishuang 发表于 2019-1-16 14:23
看requestFileSystem里面的参数是否都正确

入参type和size两个地方取到的值是一样的,button的点击事件可以往下执行,a链接的点击事件不往下执行了
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2019-1-16 14:47:04 | 显示全部楼层
那就应该可以
插件中的实现不会去区分是什么组件调用的,可以用button的class设置为btn-link,跟a的展现一样
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

52

主题

158

帖子

522

积分

高级会员

Rank: 4

积分
522
QQ
 楼主| 发表于 2019-1-16 14:55:30 | 显示全部楼层
jishuang 发表于 2019-1-16 14:47
那就应该可以
插件中的实现不会去区分是什么组件调用的,可以用button的class设置为btn-link,跟a的展现一 ...

上面那个a标签是从数据库里读取的一段html代码,a标签的href是指向一个网络文件地址,在app上要通过fileApi来打开这个网络文件,于是我就动态为html代码中的a标签添加了个data-bind点击事件,后来发现这个点击事件和直接通过button进去的点击事件执行的不一样啊
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2019-1-16 15:26:28 | 显示全部楼层
不通过动态设置,直接在组件的事件中设置没问题?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

52

主题

158

帖子

522

积分

高级会员

Rank: 4

积分
522
QQ
 楼主| 发表于 2019-1-16 15:46:23 | 显示全部楼层
jishuang 发表于 2019-1-16 15:26
不通过动态设置,直接在组件的事件中设置没问题?

找到问题所在了,那段html代码中a标签自带的有href属性,我又给加了个data-bind属性,那就意味着a标签的点击事件有俩,程序不着该执行那个了估计,我把html代码中a标签的href属性干掉,代码执行正常了。
感谢。可以结贴了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 15:35 , Processed in 0.079008 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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