当前位置:首页 > Web亚搏体育app > Ajax 技术 > 正文

struts2中,如果采用ajax调用,如何获取页面数据

struts2中,如果采用ajax调用,怎么获取页面数据?-?Web?亚搏体育app?/?Ajax?1,在Action类中定义一个User?user对象,有name,id属性;?2,页面中这样写???????3,如果是用form提交的话,在Action中会自动把页面输入的name和id装载到user对象?4,但是我现在用了jquery的ajax调用,目的是为了在Action返回后直接处理页面???$.ajax({?url:'save_Batch',?type:'POST',?error:function(xhr,status,errorMessage){},?success:function(){?alert('保存成功!');???//后续处理?}?});???这样调用的话页面数据不会装载到action的user对象,user对象还是null,如果需要传递数据的话,只能在ajax调用中使用data,但是如果页面数据元素很多的话,写起来太繁琐?请问有什么办法能够实现用ajax调用也能装载数据吗,谢谢!?
------------有效建议1------------
?CSS?code?

你可以通过jQuery先获得页面的值
然后将值传过去,url:'save_Batch?user.name=aaaa&user.id=bbbbb',
这样后台还是可以得到这些数据的。
前提是传值的方式是以对象的方法,因为你在struts2中是user的getter、setter方法
所有在js中用data:?{user.id:1,user.name:'bbb'}
也是可行的
?
------------有效建议2------------
?
我跟你的问题是一样的。?我的写法是:?//查询条件生成json数据? function?queryTerInfo(){ ? var?jsonStr?=?[];? var?_str?=?[];?? $("#querySite?input:text").each(function(){? jsonStr.push("'"+$(this).attr("name")+?"':'"?+?encodeURI($(this).val())+"'");? });? $("#querySite?select").each(function(){? jsonStr.push("'"+$(this).attr("name")+?"':'"?+?encodeURI($(this).val())+"'");? });? jsonStr?=?jsonStr.join(',');?? _str.push('{');?_str.push(jsonStr);?_str.push('}');? _str?=?_str.join('');? var?data?=?eval('('?+?_str?+?')');? ajax(TER_QUERY_URL,?data);? }
?
------------有效建议3------------
?
因为我的查谒条件用包起来。然后里面就text?select?这些条件。如果你还有别的可以加。元素的名称就不变跟你上面一样user.id?,user.name?得到的数据为:{'user.id':'1','user.name':'2'}
友情链接
异常 - Exception - Copyright ? 2014 - 2014 - 亚搏体育app异常网 - 鄂ICP备14001750号 - 网站地图