首页 > 解决方案 > 表行onclick字符串值在jquery中显示错误

问题描述

我已经使用 json 从 Ajax 中的数据库中填充了表。但是在单击编辑按钮时,只有数字字段被传递给 java 脚本函数。但是当我想传递名称之类的字符串时,未传递base64Encoding字符串这是java脚本代码

'<a href="javascript:void(0)" onclick="doGet('+item.pohto+','+item.name+')" > <i class="fas fa-pencil-alt"></i> </a>';

当我单击编辑图标时,它显示以下错误

SyntaxError: missing ) after argument list

但是当我只使用数字值时它正在工作。

请帮我传递字符串值,如图像、名称

标签: javascriptjquery

解决方案


那是因为当item.pohtoitem.name是包含空格的字符串时,你最终会得到这样的结果:

onclick="doGet(value one, value two)"

这是无效的语法。您必须添加引号以使这些值成为字符串文字。

'<a href="javascript:void(0)" onclick="doGet(\''+item.pohto+'\', \''+item.name+'\')" > <i class="fas fa-pencil-alt"></i> </a>'

您还可以使用字符串模板,这将使其更易于阅读:

`<a href="javascript:void(0)" onclick="doGet('${item.pohto}', '${item.name}')" > <i class="fas fa-pencil-alt"></i> </a>`

推荐阅读