HTML5标签点击事件方法:无法传递对象类型参数
来源:互联网 发布:软件平台用户手册模板 编辑:程序博客网 时间:2024/06/11 11:46
如下为onclick 事件,点击触发startTask 方法,其中有两个参数,task 和 type,如果我这里的task是对象类型的,会导致startTask(task,type)方法接收到的task为[object Object],不能拿到数据。
结论:HTML5标签点击事件方法之无法传递对象类型参数
"<div class='task_item box_vertical_center' onclick='startTask(\"" + task + "\" ,\""+ type + "\")'>"
我这里需要实现的需求
现在有很多任务,点击某个任务执行某个任务数据,类似iOS中TableView数据源
解决处理
将数据源作为全局数组处理,然后在HTML标签传递 i 任务在数组数据源中的位置,在startTask(i,type)方法中根据 i 取对应的任务做出相应处理。
用拼接字符串的方式构建html,只能拼接字符串,对象是没办法拼接的。
如果row是数字或字符串,则拼接结果为
lookCard(1) 或 lookCard(a)
如果row是对象,则拼接结果为
lookCard([object Object])
这里[object Object]会引起 Uncaught SyntaxError: Unexpected identifier
ps:上面的lookCard(a)也会引起错误,正确方法还要给字符串类型添加引号,即lookCard(“a”)
解决方法:
(1)将row转换成json,拼接进去,后面在函数里面再转换回来。
(2)拆开row,把row的多个属性逐一作为参数传递给函数。
(3)保存row为全局,传递row的凭证给函数,函数拿着凭证去全局取row对象。
阅读全文
0 0
- HTML5标签点击事件方法:无法传递对象类型参数
- JS与JQuery点击事件传递参数
- react native点击事件传递参数
- <a>标签中href属性动作和onclick事件的区别以及传递this参数对象
- Button点击事件绑定中如何传递带参数的方法
- 面向对象-方法参数传递
- js 方法传递对象参数
- 在js循环中如何给a标签的点击事件的方法参数赋值有效
- js对象无法当成参数传递
- js对象无法当成参数传递
- a标签常用的点击事件方法
- javacript onclick事件中传递对象参数
- java 对象类型的参数传递
- ListView的点击事件方法参数解释
- Knockout 事件传递参数的方法
- Knockout 事件传递参数的方法
- jquey bind 点击事件参数传递的问题
- iOS UIButton点击事件传递参数的解决办法
- 【Redis】使用Jedis实现客户端Sharding
- 阿里云深度学习平台试玩
- 排序
- java基础——流程控制语句(顺序结构)
- 第四章 INI配置——《跟我学Shiro》
- HTML5标签点击事件方法:无法传递对象类型参数
- JAVA中的继承和重写
- 封装jquery插件的两种方式
- HTML 实体符
- HDU1158-Employment Planning(dp)
- Maven工程修改jdk版本
- 物品存储与背包系统
- 主动降噪技术
- Vue.js——60分钟快速入门