如何在JSP代码中嵌入javascript代码

来源:百度知道 编辑:UC知道 时间:2024/07/07 08:40:50
就是 在<% %>的JSP代码中 怎么写JAVASCRIPT代码呢 我怎么写都会有错??请高手指教 谢谢

不能这么写的,两者的执行位置不一样,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>");
%>