jsp中客户端与服务器端的代码执行关系

通过下面两个问题学习一下这个知识点:(下面代码都是写到jsp中的)

[color=red]第一个实验:[/color]

<% int i;%>

<script>
alert(i);
</script>


上面的脚本是无法正确执行的('i'未定义),int i;这句代码是在服务器端执行的,而alert(i)是浏览器在客户端执行的,这个要搞清楚。可以通过查看页面源代码理解一下。


[color=red]第二个实验:[/color]

<script>
var ii;
</script>
<%System.out.print(ii)%>


上述代码同样无法正确执行:System.out.println(ii)这句是服务器端执行的,执行完成后将结果返回到客户端后才轮到var ii 执行 他的执行顺序优先于script脚本中的var ii执行。所以jsp将无法编译;
[color=red]

第三个问题:[/color]


<script>
var ii = '<% out.print(5 + 5)%>';
alert(ii)
</script>


上述代码可以正确执行,首先服务器端代码out.print(5+5)将会首先执行,将执行结果out.print(10)返回到界面,通过查看源代码可以知道服务器返回的结果在客户端的最终效果为:var ii = 10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值