4年前第一次用struts2的时候,有一个疑问,为什么在js里无法直接取到Action里的值,而在jsp里可以
现在基本知道拉,总结一下:
Action是在服务端(servlet容器里)执行的,执行之后生成jsp,并写入响应返回给客户端(一般是浏览器)
通常情况下,Action和jsp可以视为一个整体,Action是jsp的前置,jsp可以从ValueStack里取到Action中定义的字段。二者共同处理HTTP请求。
本质上来说,大体上可以认为是这个流程:Action进行逻辑处理之后,把一些值放到Request的Attribute里(或者是SessionAttribute,总之都没有脱离servlet规范的范畴),然后jsp从里面取出来,最后jsp经过servlet容器的编译,生成响应返回客户端
但是javascript的执行环境完全不同。客户端得到的最终的html里,附带了javascript的链接,浏览器重新发起请求,获取到javascript之后,在本地执行,这时候与此前针对Action发起的请求已经没有关系了。这时候一般来说,javascript只能基于html取值,也可以选择重新发起ajax请求
所以实际中,在jsp页面里,需要把javascript以后可能会用到的值,先放到html里,比如:
<td>
<button class="edit_book">编辑</button>
<button class="delete_book">删除</button>
<span class="hidden_book_id"><s:property value="id" /></span>
</td>
这里的<span>,是不在页面上显示的,目的就是为了之后给javascript来取
function deleteBook() {
var $deleteButton = $(this);
var $idSpan = $deleteButton.parent().find(".hidden_book_id");
var bookId = $idSpan.text();
var url = "delete.action?id=" + bookId;
window.location.href = url;
}
分享到:
相关推荐
jsp自动调用action采用中间jsp方法 就是采用从欢迎页跳到action处理再转到展示页面,就可以访问页面时加载数据
action和jsp之间 的参数传递,这是本人平时总结的希望对你们有帮助
主要介绍了JavaScript获取网页表单action属性的方法,涉及javascript操作表单属性的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
通过jquery ajax 在struts2 action 和 jsp之间传递json
jsp action中保存和修改的关系.docx
在一个jsp页面中,定义了一个用户登录界面(以form表单定义),但要达到检验输入的信息的合法性,就需要对输入的用户信息作判断,那么自然就需要取出其中的值。有的页面可以用action传参来得到form中输入的信息值,...
一个Jsp两个ActionForm分别提交.rar一个Jsp两个ActionForm分别提交.rar一个Jsp两个ActionForm分别提交.rar一个Jsp两个ActionForm分别提交.rar一个Jsp两个ActionForm分别提交.rar
javascript in action : javascript 实战源码。比较经典。
可以解决在jsp页面向action传值遇到的中文乱码问题。
D3.js In Action D3实战 英文版 D3.js In Action D3实战 英文版 D3.js In Action D3实战 英文版 D3JS参考 学习D3JS
action "" method "post"> <input type "text" id "pageSize" name "pageSize" onfocus "submit "> <a id "test"">html>&...
jsp\No result defined for action and result input.doc
用js函数让网页重定向,window.location.href=‘actionName.action?paraName=arg0’; 如果需要带参数的话可以在action中定义那个参数名paraName,并生成setter和getter方法 方法二: <script type= "text/...
D3.js in Action Data visualization with JavaScript(2nd) 英文无水印原版pdf 第2版 pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系...
action.jsp
Ember.js in Action
1_login_action.jsp
Flash MX Action简易手册 以列表形式介绍了Flash MX ASP-JSP-j2ee-FTP相关技术资料CHM电子书
commons-el-1.0 devguide1_2_1.pdf el-jstl.txt EL.doc ...Manning-JSTL in Action.pdf 《深入浅出Servlets and JSP第二版》.pdf 图解JSP环境安装配置.chm 掌握自定义JSP标签.chm 表达式语言(EL).pdf