需求要求實現用彈出層發送郵件。提交后層關閉,程序再服務器端響應。
?
JSON 插件提供了一種名為json的ResultType,一旦為某個Action指定了一個類型為json的Result,則該Result無需映射到任何視圖資源。因為JSON插件會負責將Action里的狀態信息序列化成JSON格式的數據,并將該數據返回給客戶端頁面的JavaScript?。
?
簡單地說,JSON插件允許我們在JavaScript中異步調用Action,而且Action不再需要使用視圖資源來顯示該Action里的狀態信息,而是由JSON插件負責將Action里的狀態信息返回給調用頁面——通過這種方式,就可以完成
Ajax
交互。
1、將struts2的json插件加入web工程的lib,jsonplugin的下載地址:
http://code.google.com/p/jsonplugin/downloads/list
2、struts.xml添加專為ajax使用的package?
?
<
package
name
="ajax"
extends
="json-default"
>
????????
<
action
name
="ajaxRequest"
? class
="org.david.struts2.HelloWorld"
>
????????????
<
result
type
="json"
></
result
>
????????
</
action
>
</
package
>
????????
?????????????
3、在頁面中引入?
jquery的js文件庫
???????
???
<
SCRIPT
type
="text/javascript"
src
="js/jquery-1.2.6.min.js"
></
script
>
?
<
SCRIPT
type
="text/javascript"
>
????????????
function
clickButton()
????????????
{????
????????????????
var
url
=
'ajaxRequest.action';
????????????????
var
params
=
{
??????????????????????? name:$('#name').attr('value'),
?????????????????????????? contactEmail:$('#contactEmail').attr('value'),
?????????????????????????? subject:$('#subject').attr('value'),
?????????????????????????? content:$('#content').attr('value')
????????????????
????????????????????? ?}
; //通過id獲得輸入值
???????????????? jQuery.post(url, params, callbackFun, 'json');
??????
???????????????} //url:響應aciton;params:傳入參數;callbackFun:響應完成后的回調函數;
????????????
???????????
????
function
callbackFun(data)
????????????
{
???????????????? alert("SUCCESS");
???
???????????? }
?????
</
SCRIPT
>
4、action邏輯與普通的ation寫法無大區別。
???? JSON將Action里的狀態信息序列化成JSON格式的數據,還不是很理解
???
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
