ajax請(qǐng)求的頁(yè)面如果有跳轉(zhuǎn)怎么辦 登錄界面交互實(shí)現(xiàn)的關(guān)鍵?
登錄界面交互實(shí)現(xiàn)的關(guān)鍵?需要通過(guò)ajax或者h(yuǎn)ttp請(qǐng)求將用戶名和密碼發(fā)送到后臺(tái),后臺(tái)將結(jié)果返回到登錄頁(yè)面進(jìn)行頁(yè)面跳轉(zhuǎn)處理。jsp html中怎么樣才能點(diǎn)擊了按鈕但是不用跳轉(zhuǎn)頁(yè)面就可執(zhí)行servlet
登錄界面交互實(shí)現(xiàn)的關(guān)鍵?
需要通過(guò)ajax或者h(yuǎn)ttp請(qǐng)求將用戶名和密碼發(fā)送到后臺(tái),后臺(tái)將結(jié)果返回到登錄頁(yè)面進(jìn)行頁(yè)面跳轉(zhuǎn)處理。
jsp html中怎么樣才能點(diǎn)擊了按鈕但是不用跳轉(zhuǎn)頁(yè)面就可執(zhí)行servlet或者后臺(tái)代碼?
其實(shí)這個(gè)可以很簡(jiǎn)單的實(shí)現(xiàn),ajax異步刷新技術(shù)就夠了。異步刷新推薦用jquery,因?yàn)閖avaScript寫(xiě)起來(lái)太麻煩。然后答案會(huì)從頭到尾告訴題主如何實(shí)現(xiàn):
什么是異步刷新技術(shù)?用我們自己的話來(lái)說(shuō),就是不刷新整個(gè)頁(yè)面,只刷新需要處理的位置。這提高了性能,也增加了用戶 的經(jīng)歷。這里 最常用的例子是:當(dāng)我們注冊(cè)一個(gè)用戶時(shí),當(dāng)我們輸入完想要注冊(cè)的用戶名后,我們需要在光標(biāo)移出輸入框時(shí)驗(yàn)證我們當(dāng)前的用戶名是否可用,所以我們不 不需要點(diǎn)擊注冊(cè)在這里做驗(yàn)證。如果我們能 t使用整個(gè)頁(yè)面刷新,我們將不得不重新輸入其他信息,這對(duì)用戶使用來(lái)說(shuō)將非常麻煩。所以最好的辦法就是只驗(yàn)證用戶名數(shù)據(jù)庫(kù),并且只提示當(dāng)前信息。這是ajax。讓 讓我們做一個(gè)這個(gè)函數(shù)的代碼演示。
前端內(nèi)容直接看代碼圖:
首先說(shuō)明要做什么。當(dāng)您在輸入框中輸入用戶名時(shí),只要鼠標(biāo)移出,您就可以驗(yàn)證該用戶名對(duì)服務(wù)器是否可用。發(fā)送異步請(qǐng)求用戶服務(wù)程序 "用jquery的ajax,然后把輸入名稱傳遞給服務(wù)器端servlet。在這里,沒(méi)有點(diǎn)擊事件,但光標(biāo)移動(dòng)事件模糊。It 都是一樣的,只是改變了方法名。然后回調(diào)成功的函數(shù)回調(diào);;
設(shè)置請(qǐng)求訪問(wèn)的servlet并直接查看代碼:
這里的答案是用最基本的配置寫(xiě)的。當(dāng)tomcat服務(wù)器收到 "用戶服務(wù)程序 "ajax發(fā)送的請(qǐng)求,它訪問(wèn) "我們已經(jīng)寫(xiě)好的Servlet類。然后在servlet類中給出相應(yīng)的響應(yīng)。
直接把代碼看做后端內(nèi)容:
當(dāng)請(qǐng)求到達(dá)servlet時(shí),它開(kāi)始接收傳遞的用戶名,然后判斷用戶名。如果可用,則返回true,如果可用,則返回false。最后將結(jié)果返回給回調(diào)函數(shù),回調(diào)函數(shù)對(duì)結(jié)果做出相應(yīng)的前端提示信息。
最終完成的效果圖:
輸入內(nèi)容時(shí),光標(biāo)只要移出,就會(huì)顯示用戶名是否可用。
總結(jié):異步刷新技術(shù)主要使用ajax,是題主不跳轉(zhuǎn)頁(yè)面的最佳選擇,實(shí)現(xiàn)起來(lái)也比較簡(jiǎn)單。
以上是答主 的解決方案。如果你有更好的看法,可以在下方評(píng)論區(qū)留言,或者點(diǎn)擊一個(gè)贊,關(guān)注我們一起探討。