Jquery 为什么可以拿到action请求之后的值栈中的值?

来源:互联网 发布:淘宝联盟分享优惠券 编辑:程序博客网 时间:2024/06/06 09:56

Jquery 为什么可以拿到action请求之后的值栈中的值?

Question:

今天在一个jsp页面的脚本中看到了一个东西:

var mobileList = '${mobileList}'

这样子action返回之后就拿到了值栈中的mobileList。

Answer:

本来以为是jquery在页面加载完成之后,使用了一些手段进行解析出来了值栈中的值,这是一个错误的思考方向,查到了template plugin,但是项目又没引用这个插件。所以就很迷茫,最后请教同事,才明白。根据来说,这个问题的关键在于何时替换了变量和jsp template解析的作用域问题。

正解:
从action请求执行完毕之后,就会执行页面跳转,但是这时候还是jsp页面,所以struts会负责将其中的变量替换完毕,不管是页面部分还是jsp部分中的,替换完成之后会生成html,完成之后执行javascript.

Summary:

以前也想过这个问题,总觉得js的域和页面是分开的,不能像页面一样进行获取值。但是没有想过生成html的过程,是整个jsp或者其它模板页面的全部变量都会替换。

0 0
原创粉丝点击