首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在JavaScript/jQuery函数中使用表达式语言(EL)?

问如何在JavaScript/jQuery函数中使用表达式语言(EL)?
EN

Stack Overflow用户
提问于 2011-10-04 07:55:35
回答 2查看 7.6K关注 0票数 4

如何从JSP中的Expression Language (EL)将值传递给JavaScript函数?

在我的JSP页面中,我有:

代码语言:javascript
复制
<li>${state}</li>
<input title="Show ${state}">Show</>

我希望能够将JSP中的${state}放入JavaScript函数:

代码语言: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>标记中的任何州。

EN

回答 2

Stack Overflow用户

发布于 2011-10-04 08:03:21

该JavaScript必须放在.jsp文件内的<script>中,而不是.js文件中,这样才能让JSP内联EL变量。

或者,您也可以只做一个简单的字符串-替换第一个单词或前四个字符的子字符串。这样,您就不需要在JavaScript中使用任何EL,因此只需将JS代码放在它自己的.js文件中即可。

顺便说一句,你的整个函数的逻辑流程本身意义不大。您真的不想检查val()是否是"Hide"吗?您真的不想在这两个条件之一的标题中使用"Show"吗?

票数 1
EN

Stack Overflow用户

发布于 2011-10-04 08:03:58

如果您可能的值是Show ${State}和Hide ${State},那么您实际上只关心前四个字符:

代码语言:javascript
复制
if ($(this).val().substring(0, 4) == "Show")
{
    ...
}
...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7641959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档