如何从JSP中的Expression Language (EL)将值传递给JavaScript函数?
在我的JSP页面中,我有:
<li>${state}</li>
<input title="Show ${state}">Show</>我希望能够将JSP中的${state}放入JavaScript函数:
$('#input').click(function() {
if ($(this).val() == "Show + ${state}">")
{
$(this).val("Show");
$(this).attr("title", "Hide + ${state}"> ");
}
else
{
$(this).val("Hide");
$(this).attr("title", "Hide + ${state}">");
}
}); 我想让每个按钮的标题显示为“显示俄亥俄”或“隐藏俄亥俄”,但更改为<li>标记中的任何州。
发布于 2011-10-04 08:03:21
该JavaScript必须放在.jsp文件内的<script>中,而不是.js文件中,这样才能让JSP内联EL变量。
或者,您也可以只做一个简单的字符串-替换第一个单词或前四个字符的子字符串。这样,您就不需要在JavaScript中使用任何EL,因此只需将JS代码放在它自己的.js文件中即可。
顺便说一句,你的整个函数的逻辑流程本身意义不大。您真的不想检查val()是否是"Hide"吗?您真的不想在这两个条件之一的标题中使用"Show"吗?
发布于 2011-10-04 08:03:58
如果您可能的值是Show ${State}和Hide ${State},那么您实际上只关心前四个字符:
if ($(this).val().substring(0, 4) == "Show")
{
...
}
...https://stackoverflow.com/questions/7641959
复制相似问题