ajax拼接顯示不同樣式,Ajax重點整理

Ajax工作流程

Ajax:在不刷新頁面的情況下向服務器請求數據

1.創建XMLHttpRequest對象(俗稱小黃人)

var xhr = new XMLHttpRequest();

XMLHttpRequest : http請求對象,負責實現ajax技術

2.設置請求

xhr.open('get', 'url');

url:服務器地址

3.發送請求

xhr.send();

4.注冊回調函數

xhr.onload = function () {

console.log(xhr.responseText);

}

xhr.responseText:請求返回的內容

這個函數不是立即執行的,而是等服務器把數據響應返回才會執行(PS:什么時候執行取決于你的網速快慢)

get請求

案例:英雄外號

接口文檔:查詢英雄外號

請求地址:https://autumnfish.cn/api/hero/simple

請求方法:get

請求參數:name

1.get傳參格式:url?key=value

2.示例: https://autumnfish.cn/api/hero/simple?name=亞索

Documenttitle>

text-align: center;

}

.name {

color: deepskyblue;

}

.title {

color: red;

}style>

head>

英雄查詢h1>

span>---span>h2>

body>

html>

/*

- 請求地址:https://autumnfish.cn/api/hero/simple

- 請求方法:get

- 請求參數:name

- 響應內容:英雄外號

*/

/*思路分析

1.給search按鈕注冊點擊事件

2.獲取hero輸入框文本

3.通過ajax調用接口:參數為輸入框文本

4.數據返回之后顯示到title標簽中

*/

//1.注冊點擊事件

$('.search').on('click', function () {

//2.獲取輸入框文本

var heroName = $('.hero').val();

//3.ajax請求數據

//(1).實例化ajax對象

var xhr = new XMLHttpRequest();

//(2).設置請求方法和地址

//get請求的數據直接添加在url的后面 格式是 url?key=value

xhr.open('get', 'https://autumnfish.cn/api/hero/simple?name=' + heroName);

//(3).發送請求

xhr.send();

//(4).注冊回調函數

xhr.onload = function() {

$('.title').text(heroName + ':' + xhr.responseText);

};

});script>

post請求

案例:用戶注冊

請求地址:https://autumnfish.cn/api/user/register

請求方法:post

請求參數:username

post請求:

1.需要設置請求頭(固定語法):xhr.setRequestHeader(‘Content-type’,‘application/x-www-form-urlencoded’)

* 注意:這是固定格式,錯一個字母都不行,強烈建議復制粘貼

2.使用xhr的send方法發送參數: xhr.send(‘參數名=參數值’);

* 注意:不要加前面的?

Documenttitle>

color: red;

}style>

head>

用戶注冊h2>

span>


body>

html>

/*

請求方法get和post區別: 傳參方式不同

get請求: 直接在url后面拼接參數

* 參數在url中,安全性不高

post請求:

1.需要設置請求頭(固定語法):xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded')

* 注意:這是固定格式,錯一個字母都不行,強烈建議復制粘貼

2.使用xhr的send方法發送參數: xhr.send('參數名=參數值');

* 注意:不要加前面的?

*/

/*

用戶注冊

- 請求地址:https://autumnfish.cn/api/user/register

- 請求方法:post

- 請求參數:username

1. 注冊點擊事件 : submit

2. 獲取輸入框文本:username

3. 通過ajax調用接口:參數為輸入框文本

4. 數據返回之后顯示到info中

*/

$(function () {

//1.注冊點擊事件

$('.submit').on('click', function () {

//2.獲取輸入框文本

var username = $('.username').val();

//3.ajax發送請求

//(1).實例化ajax對象

var xhr = new XMLHttpRequest();

//(2).設置請求方法和地址

xhr.open('post', 'https://autumnfish.cn/api/user/register');

//(3).設置請求頭(post請求才需要設置)

xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded');

//(4).發送請求 : 參數格式 'key=value'

xhr.send('username=' + username);

//(5).注冊回調函數

xhr.onload = function () {

$('.info').text(xhr.responseText);

};

});

});script>

請求方法get和post區別

傳參方式不同

get請求:

直接在url后面拼接參數

* 參數在url中,安全性不高

post請求:

1.需要設置請求頭(固定語法):xhr.setRequestHeader(‘Content-type’,‘application/x-www-form-urlencoded’)

* 注意:這是固定格式,錯一個字母都不行,強烈建議復制粘貼

2.使用xhr的send方法發送參數: xhr.send(‘參數名=參數值’);

* 注意:不要加前面的?

JSON數據格式解析

JSON格式

通用的數據格式,很多語言都支持,不同語言中解析他的方式不同

js中對應JSON的使用 2個方法

JSON是一種數據格式,本質是字符串 作用: 解決跨平臺的問題,一般服務器返回的數據都是json格式

JSON格式特點 a. 屬性名和屬性值都是字符串(需要使用雙引號包括)

b. 如果屬性值是布爾類型和數字類型,則可以省略字符串

.JSON格式與JS對象互轉

JSON->JS : JSON.parse(json數據)

JS->JSON :JSON.stringify(js對象)

模板引擎art-template

模板引擎art-template使用流程

1.導入模板引擎art-template.js文件

2.寫HTML模板

模板寫到script標簽中

必須要設置id

必須要設置type(一般為 type=“text/html”)

3.調用art-template的官方API開始解析模板

var htmlStr = template('tpl', jsonObj.data);

第一個參數: html模板的id名

第二個參數: 要渲染的數據

返回值: 渲染數據之后的html字符串

4.將解析好的模板顯示到頁面

document.body.innerHTML = htmlStr;

模板引擎語法介紹

輸出

標準語法

{{value}}

{{data.key}}

{{data['key']}}

{{a ? b : c}}

{{a || b}}

{{a + b}}

原始語法

條件

標準語法

{{if value}} ... {{/if}}

{{if v1}} ... {{else if v2}} ... {{/if}}

原始語法

...

... ...

循環

標準語法

{{each target}}

{{$index}} {{$value}}

{{/each}}

原始語法

ajax 項目經驗總結

1.模板引擎支持字符串的方法 indexOf() split()

2.如果一段代碼在多個地方執行,可以使用函數封裝

可以自己寫一個函數封裝

事件本事就是一種函數封裝,可以主動觸發事件

$().click

$().trigger(‘click’)

3.loading加載效果

布局思路:使用gif動圖實現

實現思路:ajax之前出現 ajax響應后消失

4.模板引擎的數據可以是ajax響應返回的,也可以是自己寫的

5.模板引擎的數據并不是全部都是替換操作html() , 也有可能是append()添加操作。取決于需求

6.非空判斷與文本清空

非空判斷:ajax發送之前

文本清空:ajax發送之后

7.文件預覽(固定方式)

5dff82f322854247945053f1cc49ba83.jpg

8.文件上傳(固定方式)

d8e8b684f651441a8004c60c78e7ff21.jpg

9.頁面間傳值

sessionStorage :適合傳多個數據

window.location.href:適合傳少量數據

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/395897.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/395897.shtml
英文地址,請注明出處:http://en.pswp.cn/news/395897.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java與mysql的交互_java與數據庫交互常用到的一些方法

下面我整理了一下java中常用的幾個與數據庫交互的常用方法,僅供參考:1.執行SQL(dao層的實現類中)(1)SQL查詢://import org.hibernate.Query;//import org.hibernate.Session;/*** 通過名稱查找id*parampsname*returnid*/OverridepublicString…

xbmc電腦版本和手機版本學習教程

XBMC改名為Kodi了,IOS系統,Cydia源地址也同樣發生了變化,新的源是:http://mirrors.kodi.tv/apt/ios/先了解一下幾點知識: 教程中的各項操作,默認起始點都是“主界面”或“各分類菜單(視頻、音樂…

線程管理(七)守護線程的創建和運行

聲明:本文是《 Java 7 Concurrency Cookbook 》的第一章, 作者: Javier Fernndez Gonzlez 譯者:鄭玉婷 校對:方騰飛 守護線程的創建和運行 Java有一種特別的線程叫做守護線程。這種線程的優先級非常低,通常…

vue2中的keep-alive使用總結及注意事項

問題總結;最近在寫vue移動端的項目的時候,當我切換菜單,再切換換回去的時候,發現頁面出現閃動的效果,其原因是因為切換回去之后,頁面重新渲染了;為了解決這一問題:查閱資料,只需要在 入口文件 App.vue 的router-view外層包裹一個keep-active標簽,表示該組件被保存在內存中,不需…

grove 套件_如何通過使用Andy Grove的High Leverage Activities加快發展?

grove 套件by Guido Schmitz由Guido Schmitz 如何通過使用Andy Grove的High Leverage Activities加快發展? (How to speed up your development by using Andy Grove’s High Leverage Activities ?) Youre constantly building on new features, fixing new bugs…

ajax php 觀察者模式,JavaScript觀察者模式定義和dom事件實例詳解

觀察者模式(發布-訂閱模式):其定義對象間一種一對多的依賴關系,當一個對象的狀態發生改變時,所有依賴于它的對象都將得到通知。在JavaScript中,一般使用事件模型來替代傳統的觀察者模式。好處:(1)可廣泛應用于異步編程…

python中代碼段的標志是什么車_請問這段Python代碼是什么意思?

ord(p) - ord(a)這個意思是以 a 為序號0,計算字符p的序號。在ASCII字符集中,小寫字母a-z是連續排列的,因此如果a是0的話,那么b就是1,c就是2……以此類推。ord(p) - ord(a) 3前面一段我們解釋過了,那么這一…

servlet和jsp頁面過濾器Filter的作用及配置

剛剛有個朋友問我,Servlet的過濾器有什么作用? 現在發個帖子說明一下, 過濾器是一個對象,可以傳輸請求或修改響應。它可以在請求到達Servlet/JSP之前對其進行預處理,而且能夠在響應離開Servlet /JSP之后對其…

tar命令速查

tar -c: 建立壓縮檔案-x:解壓-t:查看內容-r:向壓縮歸檔文件末尾追加文件-u:更新原壓縮包中的文件 這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。下面的參數是根據需要…

附005.Docker Compose文件詳解

一 Docker Compose文件簡介 compose文件使用yml格式,主要分為了四個區域:version:用于指定當前docker-compose.yml語法遵循哪個版本services:服務,在它下面可以定義應用需要的一些服務,每個服務都有自己的名…

如何使用TensorFlow構建簡單的圖像識別系統(第2部分)

by Wolfgang Beyer沃爾夫岡拜爾(Wolfgang Beyer) 如何使用TensorFlow構建簡單的圖像識別系統(第2部分) (How to Build a Simple Image Recognition System with TensorFlow (Part 2)) This is the second part of my introduction to building an image recognition system wi…

網站 服務器 用sqlite,sqlite服務器數據庫

sqlite服務器數據庫 內容精選換一換簡要介紹SQLite是一款輕量級的關系型數據庫,它的運算速度非常快,占用資源很少,不僅支持標準的SQL語法,還遵循了數據庫的ACID事務。編寫語言:C一句話概述:輕量級的關系型數…

type-c接口圖片_TypeC接口除了充電還能干嗎?這些功能都不知道,簡直是在浪費...

Type C手機接口相信每個使用智能手機的朋友都很熟悉,目前已經廣泛使用在智能手機領域,并且得到用戶一致好評。但是對于Type C接口真正的用處很少有人知道,大部分用戶只了解正反面都可充電,其他方面一概不知,對于這一點…

Zookeeper的api的簡單使用(轉載)

轉載自: http://www.cnblogs.com/sunddenly/p/4031881.html 1.API 2.API 示例 ZooKeeper中的組成員關系 理解ZooKeeper的一種方法就是將其看作一個具有高可用性的文件系統。但這個文件系統中沒有文件和目錄,而是統一使用“節點”(node)的概念,稱為znode…

必須使用301重定向的運用場景

必須使用301重定向的運用場景

1.1好素數

題目 題意:一個好素數的定義是,他是一個素數,然后他的左右兩邊10區間內存在素數,那么他就是好素數,現在讓你輸入一個數字,這個數字以內的好素數的數量。 解題方法:先把每一個數字是不是素數判斷…

jquery.vue.js_一個Vue.js簡介,面向只了解jQuery的人

jquery.vue.jsby Matt Rothenberg馬特羅森伯格(Matt Rothenberg) 一個Vue.js簡介,面向只了解jQuery的人 (A Vue.js introduction for people who know just enough jQuery to get by) I’ve had a love-hate relationship with JavaScript for years.我與JavaScrip…

python 矩陣獲取行數_4個最佳項目創意的代碼片段和示例,旨在為Python和機器學習構建出色的簡歷!...

點擊上方“小白學視覺”,選擇加"星標"或“置頂”重磅干貨,第一時間送達一篇文章帶你了解4個最佳項目創意的代碼片段和示例Python是一種特殊的編程語言,適用于從初學者到中級用戶。由于它的靈活性,它正逐漸成為一種非常流…

Android 多狀態加載布局的開發 Tips

2019獨角獸企業重金招聘Python工程師標準>>> 什么是多狀態 Layout 對于大多數 App 而言,項目中都有多狀態加載 View 這種需求,如下圖所示。 對應到開發中,我們通常會開發一個對應的自定義 layout 用于根據頁面不同的狀態來顯示不同…

XML解析之JAXP案例詳解

根據一個CRUD的案例&#xff0c;對JAXP解析xml技術&#xff0c;進行詳細的解釋&#xff1a; 首先&#xff0c;已知一個xml文件中的數據如下&#xff1a; <?xml version"1.0" encoding"UTF-8" standalone"no"?> <書架><書 出版社…