如何quote/write JSP 变量在JavaScript 内联属性代码中?

How to quote/write JSP variable in JavaScript inline attribute code?

我需要在运行时将变量发送到 ajax 的 js 方法。我正在尝试使用此 onclick 函数,但它在单击时出现语法错误。:

<c:set var="abc" value="${myTaglib:getAbc()}" />
<a href="#" onclick="sendAjax(${abc.firstVal}, ${abc.secVal}, ${abc.thirdVal}, ${abc.fourthVal}, ${abc.fifthVal})"> Click Here !!!</a>

其中一些值可能包含 space 和小数。单击时,我在第一次出现 space 时收到此错误。:

SyntaxError: missing ) after argument list

实际的 HTML 看起来像:

<a onclick="sendAjax(240265, Workplace Ethics Exam, Company Security Policy, Friends Life, ABF/45RFG, 41444.1830)" href="#">Click Here !</a>

这个 JS 调用有什么问题?

您是否尝试在最后一个花括号后留下 space?

您的 JavaScript 代码中的空格很可能是语法错误。如果您的值有空格,最好将它们视为字符串。

onclick="sendAjax('${abc.firstVal}', '${abc.secVal}', ... '${abc.fifthVal}')">

如果以后想将它们用作数字,可以使用 JavaScript 函数 parseIntparseFloat 将字符串转换为数字。