jsp 命令<%=%> 在 Javascript 语句中使用时被忽略,在 taglib 标记语句内
jsp command <%=%> being ignored when it is used in a Javascript statement, inside a taglib tag statement?
一个例子会更清楚地说明这一点!
该 jsp 文件...
<%@ taglib prefix ="jam" uri= "http://jam.tld" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="ISO-8859-1"%>
<%
String targetPage = true ? "toast" : "bread";
%>
<jam:text onmousedown="movePage('<%=targetPage%>');" id="<%=targetPage%>"><%=targetPage%></jam:text>
注意 - 标签库不是我的,我无法控制它。(它也不是真正被称为果酱:)。
然后,这将创建此 HTML...
<td onmousedown="movePage('<%=targetpage%>;');" id="toast">toast</td>
正如你所看到的:<%=targetPage%> 只在非 javascript 位中被替换/解析?
编译后的 jsp 文件如下所示:
jspx_th_jam_005ftext_005f2.setOnmousedown("movepage('<%=targetpage%>')");
有人知道发生了什么,或者如何解决它吗?为什么 <%=%>
标记在 JavaScript 语句中被忽略?:)
这里有一个作弊解决方案,你不需要那个JS调用中的JSP标签。事实上,这样更整洁
<jam:text onmousedown="movePage(this.id);" id="<%=targetPage%>"><%=targetPage%></jam:text>
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何在ReactJS JSX中执行嵌套的if-else语句
- 将Angular js与taglib结合使用
- 自动修复”;语句前缺少分号“;
- 如何在 API 调用后和 if 语句中启用提交按钮
- 是“;x==a||b”;以及“;x==a||x==b”;JavaScript中的等效语句
- 带有多个elseif的Javascript if语句
- 这个条件语句的逻辑有问题
- Sharepoint JScript if语句未执行
- 为什么继续;语句冻结浏览器
- Javascript:If-then语句在函数中不起作用
- SharePoint 2010 Jquery/JSON Rest Multiple OR语句-如何
- for循环中的javascript if语句找不到==
- 当使用extern和目标JavaScript时,我如何强制Haxe编译器使用require语句
- jquery if语句返回return wong语句
- 函数在return语句之前返回空对象
- 在if语句下的html中使用javascript变量
- 将错误与if语句混淆
- 如何知道javascript for语句中的所有结果是否都是错误的
- jsp 命令<%=%> 在 Javascript 语句中使用时被忽略,在 taglib 标记语句内