JSP 在网络服务器上运行,并根据网络浏览器请求生成/生成 HTML/CSS/JS 代码。网络服务器将 HTML/CSS/JS 发送到网络浏览器。网络浏览器运行 HTML/CSS/JS。因此,您只需要让 JSP 将其按字面意思打印为 JS 代码即可。
<script language="javascript">
function bustOut(){
var newWin = window.open("the real url", "subWindow","height=500,width=700,resizable=yes,scrollbars=yes");
}
<%
if (foo != null) {
out.print("bustOut();");
}
%>
</script>
或者,better,带 EL
<script language="javascript">
function bustOut(){
var newWin = window.open("the real url", "subWindow","height=500,width=700,resizable=yes,scrollbars=yes");
}
${not empty foo ? 'bustOut();' : ''}
</script>
(请注意,我将属性名称更改为foo,因为request 代表HttpServletRequest,这可能会使其他人感到困惑,因为这永远不是null)
无论哪种方式,当条件为真时,生成的 HTML(您应该通过在浏览器中打开页面,右键单击它并选择查看源代码来看到)应该如下所示:
<script language="javascript">
function bustOut(){
var newWin = window.open("the real url", "subWindow","height=500,width=700,resizable=yes,scrollbars=yes");
}
bustOut();
</script>
它现在会打开你头顶上的灯泡吗?