一般参数传递通过url后面跟后台也能取到,不过看到send参数也可以发送参数,试验了一下服务器端接受不到发送的参数,在firebug里看到发送的请求post部分是一个串,不太象正常发送的参数。
ajax同步请求一般下面这样:
var conn = Ext.lib.Ajax.getConnectionObject().conn; conn.open("POST", 'http://localhost:8080/struts2study/TreeDDGet?node=-1',false); // 这里的conn对象其实就是 xmlHttpRequest 对象。 conn.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"); conn.send("start=" + 0 + "&limit=" + 30 ); var rootJson = conn.responseText;
一般参数传递通过url后面跟后台也能取到,不过看到send参数也可以发送参数,试验了一下服务器端接受不到发送的参数,在firebug里看到发送的 请求post部分是一个串,不太象正常发送的参数。搜索了很久也没有找到方法,后来搜到一篇文章介绍了xmlHttpRequest对象的send方法解 释,才知道需要设置一个header属性Content-Type 告诉服务器是form方式发送数据,然后send方法里的参数串才会被服务器解释到。
解决Ajax参数传递问题
本文介绍了一种在使用Ajax进行异步请求时正确传递参数的方法。通过设置Content-Type头为application/x-www-form-urlencoded,确保了服务器能正确解析send方法中的参数串。
357

被折叠的 条评论
为什么被折叠?



