单引号+双引号:传参的转义问题

来源:互联网 发布:python教程3.6.2 编辑:程序博客网 时间:2024/06/03 14:18
今天遇到一个奇怪的bug,在一个table中有一列按钮,是根据js代码返回的
formatter: function (cellvalue, options, rowdata) {                    return '<button class="btn green orderDetail" onClick="showDetail('+options.rowId+')">详情</button> <button class="btn green redoOrder">重试</button>';                }

我向onClick事件中的函数里面传入了一个参数,在页面上,这些“详情”按钮有些可用,有些不可用。

最终找到的原因是:options.rowId并不是一个真正的字符串,需要转义,
在向函数传参时,如果是字符串,需要这样传入参数showDetail("options.rowId"),
而不是这样传入参数showDetail(options.rowId)

所以需要将代码改为
formatter: function (cellvalue, options, rowdata) {                    return '<button class="btn green orderDetail" onClick="showDetail(\''+options.rowId+'\')">详情</button> <button class="btn green redoOrder">重试</button>';                }


搞定!
  • 大小: 3.5 KB
  • 查看图片附件
原创粉丝点击