如何在JSP代码中嵌入javascript代码
发布网友
发布时间:2022-05-06 05:57
我来回答
共1个回答
热心网友
时间:2022-04-24 04:34
不能这么写的,两者的执行位置不一样,JSP在服务器,JS在客户端。
JSP代码最后都是要编译成Servlet在服务端执行的,然后把HTML格式的执行结果输出到客户端,而JavaScript是要发送到客户端解释执行的,两者的执行一个在前,一个在后,没法嵌套,即:
JSP->Servlet(在服务器端执行)->HTML(包括JS)->客户端(解释执行JS并渲染HTML)
不过JSP代码倒是可以嵌套在JavaScript中,因为在将执行结果(HTML)返回给用户之前,JSP会在服务器端执行,而嵌套在JavaScript中的JSP代码就会替换为执行结果,如:
<script type="text/javascript">
function test(){
var i=<%=request.getLocalPort()%>;
alert(i);
}
</script>
如果实在要写的话可以通过JSP的内置对象out来把JavaScript代码输出到客户端,但这样还是走的JSP->Servlet->HTML的流程,等于多走了一步,还不如直接写在HTML里.
下面给出一个例子:
<%
out.println("<script type='text/javascript'>alert('Hello')</script>");
%>