原理:
jsp中的 Java 代码 —— 服务器端代码
js 代码 —— 客户端代码
java是在服务器端运行的代码,jsp在服务器的servlet里运行,而 JavaScript 和html都是在浏览器端运行的代码。
所以服务器端先执行,执行后将信息传给客户端。
因此加载jsp页面的执行顺序是java -> jsp ->js,
加载jsp的时候先编译java代码,有错误的话会直接报错;没报错的话会执行jsp代码,最后加载js代码。
这段程序是在js中插入jsp语句,可以正常的执行;
jsp中的 Java 代码 —— 服务器端代码
js 代码 —— 客户端代码
java是在服务器端运行的代码,jsp在服务器的servlet里运行,而 JavaScript 和html都是在浏览器端运行的代码。
所以服务器端先执行,执行后将信息传给客户端。
因此加载jsp页面的执行顺序是java -> jsp ->js,
加载jsp的时候先编译java代码,有错误的话会直接报错;没报错的话会执行jsp代码,最后加载js代码。
============刚写博客,有错误欢迎指正=======
原文:http://blog.csdn.net/m_e_i_/article/details/50986914
最近突然好奇,js与jsp的执行顺序:
先看一段程序:
<html>
<head>
<script type="text/javascript">
var value = <%= request.getParameter("number")%>; //上一个jsp中穿过来的
alert(value);
</script>
</head>
<body>
</body>
</html>
这段程序是在js中插入jsp语句,可以正常的执行;
再看下面一段程序:
<html>
<head>
<title></title>
<script>
function loading()
{
document.write("JavaScript输出");
}
</script>
</head>
<body onLoad="loading()">
<%="jsp输出"%>
</body>
</html>
这段程序在浏览器访问的时候只会显示
JavaScript输出
因为:
<%="jsp输出"%>这是jsp中的嵌入java程序,是在服务器端运行的;
因此,我们可以总结出js与jsp 的执行顺序是,先在服务器端将jsp语句运行完成后再插入到js中,再由浏览器来执行js程序;
js可以使用java的变量,但是java不可以使用js的变量,一个jsp页面的编译顺序是,先编译java代码,然后再编译js代码。
原文链接:http://blog.csdn.net/nuisthou/article/details/50923288