国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > WEB開發(fā) > 正文

頁(yè)面跳轉(zhuǎn)+把數(shù)據(jù)庫(kù)中查出的內(nèi)容顯示在該頁(yè)面上

2024-04-27 15:17:19
字體:
供稿:網(wǎng)友

背景】 要對(duì)一條運(yùn)輸信息進(jìn)行修改。 1.點(diǎn)擊修改按鈕 2.跳轉(zhuǎn)到編輯頁(yè)面 3.并且把數(shù)據(jù)庫(kù)查詢得到的內(nèi)容填寫到跳轉(zhuǎn)網(wǎng)頁(yè)的表單中

【說一下思路】 1.點(diǎn)擊按鈕之后,觸發(fā)函數(shù),這個(gè)函數(shù)能夠獲取到頁(yè)面中被選中要修改的項(xiàng)目的標(biāo)識(shí),通過Ajax將此值傳給php文件。 2.接下來php會(huì)進(jìn)行數(shù)據(jù)庫(kù)操作,把選中的項(xiàng)目信息查詢出來,封裝成json傳回給js。 3.js從后臺(tái)獲取到返回值,解析json,得到項(xiàng)目信息值。 4.跳轉(zhuǎn)網(wǎng)頁(yè)到添加發(fā)布頁(yè)面,把獲取到的信息值填入該頁(yè)面。

針對(duì)上面的思路,要解決下面幾個(gè)問題:】 1.php怎么封裝json?js又怎么解析json 2.js跳轉(zhuǎn)怎么實(shí)現(xiàn)? 3.js如何獲取url中的參數(shù)?中文亂碼問題如何解決?

解決過程真是異常艱難,在學(xué)習(xí)狀態(tài)不好的情況下,用了一天半的時(shí)間,中間百度了無(wú)數(shù),也問了無(wú)數(shù)次別人,像只被喂了食的小鴨子。

=>【php怎么封裝json? js又怎么解析json】 在還沒有意識(shí)到php向js回傳數(shù)據(jù)時(shí)需要發(fā)送json前,js是無(wú)論如何都接收不到回值的。也不知道是為什么,一直在原地盤旋。以為是php沒有post到值,做測(cè)試時(shí)發(fā)現(xiàn)php這邊是可以輸出想要的東西的。

比如設(shè)被選中的單選框id是2

$radio=2

這里寫圖片描述

顯示結(jié)果: 這里寫圖片描述

所以并不是php post不到值或者無(wú)法獲得查詢結(jié)果,而是回傳有問題。 在查了很久的資料之后……好漫長(zhǎng),才知道要對(duì)于json進(jìn)行封裝。修改代碼如下:

這里寫圖片描述

json_encode將上篇提到的【關(guān)聯(lián)數(shù)組】轉(zhuǎn)換成json格式,然后回傳。接著在js中對(duì)回傳的json格式進(jìn)行解析:

首先,要接收到后臺(tái)返回的數(shù)據(jù): 這里寫圖片描述

htmla.respondseText得到的字符串,用jQuery.parseJSON()把json解析出來。

(PS:向ajax后臺(tái)的程序發(fā)送xmlhttp請(qǐng)求的時(shí)候,后臺(tái)程序接到請(qǐng)求后會(huì)進(jìn)行處理,初級(jí)結(jié)束后,可以返回一串?dāng)?shù)據(jù)給前臺(tái),這個(gè)就是responseText。)

json的格式是鍵值對(duì),那么是通過key來訪問value的,所以會(huì)看到是infos.key獲取到我們需要的值。 這里寫圖片描述

=> 【js跳轉(zhuǎn)怎么實(shí)現(xiàn)?】 現(xiàn)在已經(jīng)把值準(zhǔn)備好了,接下來是把值傳到頁(yè)面,然后顯示。首先就要解決如何轉(zhuǎn)頁(yè)面。 跳轉(zhuǎn)很多方法,然而試過了,竟然奇跡般的都不行!!!! 最后找到一種辦法,就是上圖中的window.open(url)。

=> 【js如何獲取url中的參數(shù)?中文亂碼問題如何解決?】 好了,現(xiàn)在值也獲取到了 ,頁(yè)面也跳轉(zhuǎn)了,解決最后一個(gè)問題吧! 在此之前我知道的都是php可以_GET()和_POST()可以獲得參數(shù)。js中沒有現(xiàn)成的函數(shù),要通過自己寫。我從網(wǎng)上找的現(xiàn)成的,直接貼出來吧。

這里寫圖片描述

function GetQueryString(name){ var reg = new RegExp("(^|&)"+name+"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null) return encodeURI(unescape(r[2])); return null;}

攔路虎:alert(GetQueryString(“pname”))時(shí),出現(xiàn)了亂碼,因?yàn)閜name是中文的嘛!

出現(xiàn)中文亂碼還能是因?yàn)樯丁顺墒蔷幋a問題。 具體的為啥不想仔細(xì)寫了,貼參考地址: http://www.jb51.net/article/19850.htm 查了一段時(shí)間,找到了一個(gè)辦法,先這么用吧。

encodeURL對(duì)數(shù)據(jù)進(jìn)行utf8編碼

這里寫圖片描述

然后用decodeURL對(duì)數(shù)據(jù)進(jìn)行2次解碼。 調(diào)用上面說的方法GetQueryString(),獲取到地址欄中的參數(shù)。

這里寫圖片描述

這個(gè)時(shí)候地址欄變成了…. 這里寫圖片描述

突然意識(shí)到,有時(shí)候看到的地址欄中也是亂七八糟的一串。

來一張跳轉(zhuǎn)成功并且顯示成功的效果圖: 這里寫圖片描述

【想要交流】 還有更簡(jiǎn)單的方法來實(shí)現(xiàn)獲取url中參數(shù)不亂碼的嗎?


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 武陟县| 黑龙江省| 九龙城区| 宕昌县| 杭锦后旗| 手游| 吉木萨尔县| 瑞丽市| 无为县| 游戏| 武城县| 南昌市| 元朗区| 中超| 吴忠市| 聂拉木县| 阿克陶县| 二手房| 正阳县| 平潭县| 泊头市| 遂溪县| 沁源县| 云龙县| 二连浩特市| 北京市| 岢岚县| 余庆县| 正镶白旗| 通州市| 慈溪市| 平阴县| 佛山市| 三亚市| 六枝特区| 安顺市| 陕西省| 革吉县| 达拉特旗| 绩溪县| 赫章县|