溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

struts2 jquery ajax 局部刷新遇到的各種問題

發(fā)布時(shí)間:2020-08-10 19:33:46 來源:網(wǎng)絡(luò) 閱讀:752 作者:水的川 欄目:web開發(fā)

   我們的網(wǎng)站一開始都是由前臺(tái)提交表單到action,每次一個(gè)小操作整個(gè)頁面都會(huì)刷新,影響用戶體驗(yàn),這次由我實(shí)現(xiàn)部分功能的局部刷新,但是初學(xué)ajax遇到不少問題struts2 jquery ajax 局部刷新遇到的各種問題

1、我們?cè)趕truts.xml外擴(kuò)展了一個(gè)xml來寫json類型傳值的action配置,我改完后直接新寫了一個(gè):

<action name="addAccount2"  class="random1.action.addAccount2">
<result name="showAccount" type="json">
<param name="root">list</param>
</result>
</action>

但是忘了刪掉原來的導(dǎo)致出錯(cuò):      

<!-- <action name="addAccount2"  class="random1.action.addAccount2">
<result name="nextaction" type="chain" >
account
</result>
<result name="failure" type="freemaker">
/error.jsp
</result>
</action> -->

 

 

2、json傳送數(shù)據(jù)后全變?yōu)樾?/span>

我在action里把取到的數(shù)據(jù)(list)轉(zhuǎn)換成JSON,success函數(shù)里循環(huán)讀取json的數(shù)據(jù),但是在把新的內(nèi)容append到相應(yīng)的塊里的時(shí)候,list里的對(duì)象屬性首字母都是大寫的,append的時(shí)候我自然寫成大寫,然而發(fā)現(xiàn)取到的都是undefined。查閱資料后,發(fā)現(xiàn)別人都是改成小寫的,我改為小寫的之后就正確了。

 

3、局部刷新后,相應(yīng)塊的js失效

本來有個(gè)下拉的js,局部刷新后居然失效了,

 

$(document).ready(function(){
$("ul.expmenu li > div.header").click(function()
{
var arrow = $(this).find("span.arrow");
alert("arrow");
if(arrow.hasClass("up"))
{
arrow.removeClass("up");
arrow.addClass("down");
}
else if(arrow.hasClass("down"))
{
arrow.removeClass("down");
arrow.addClass("up");
}
$(this).parent().find("ul.menu").slideToggle();
});
});

解決無果后,只好把該效果放到了onclick事件里:

 

<script>
function showcontent(id){
//alert(id);
var str="list"+id;
/* $("div").children(".list").hide();
$("#"+str).show(3000); */
var arrow = $("#"+id).find("span.arrow");
if(arrow.hasClass("up"))
{
arrow.removeClass("up");
arrow.addClass("down");
$("#"+str).hide();
}
else if(arrow.hasClass("down"))
{
arrow.removeClass("down");
arrow.addClass("up");
$("#"+str).show(3000);
}
$("#"+id).find("ul.menu").slideToggle();
}
</script>

 

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI