您好,登錄后才能下訂單哦!
我們的網(wǎng)站一開始都是由前臺(tái)提交表單到action,每次一個(gè)小操作整個(gè)頁面都會(huì)刷新,影響用戶體驗(yàn),這次由我實(shí)現(xiàn)部分功能的局部刷新,但是初學(xué)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>
免責(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)容。