您好,我需要在jsp内的标签内的javascript调用内输出java变量!
例如:
<% String param = "hello";%> <dmf:checkbox name="checkbox" onclick = "selectAll(<%=param%>)" />
生成的javascript是:
selectAll(<%=param%>),this); 但我实际上想要这样的东西
selectAll(<%=param%>),this);
selectAllCheckBoxes(Hello),this);
那不是逃避。那只是打印一个scriptlet变量,就好像它是一个JavaScript变量一样。
此外,您的示例令人困惑,它们彼此不匹配,并且Javascript代码在语法上无效。我至少可以说JavaScript字符串变量要用引号引起来。如果你想结束
selectAllCheckBoxes('Hello', this);
Hello应该在哪里获取作为scriptlet局部name变量的值(这param是保留变量名,您不应该自己使用它),那么您需要
Hello
name
param
selectAllCheckBoxes('<%= name %>', this);
同样,如果您想结束
onclick="selectAll('Hello')"
你需要做
onclick="selectAll('<%= name %>')"
也就是说,我强烈建议您停止使用十多年来不鼓励使用的老式scriptlet。建议JSP程序员使用taglibs和EL仅是为了使JSP代码更干净,更健壮和更易于维护。您可以使用诸如JSTL之类的标记库来控制JSP页面中的流程,还可以使用EL来访问“后端”数据。您的示例可以替换为:
<c:set var="name" value="Hello" /> ... selectAllCheckBoxes('${name}', this);