一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - ASP.NET教程 - ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

2020-05-13 15:32千年碼尸 ASP.NET教程

這篇文章主要為大家詳細(xì)介紹了ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

使用 AjaxPro 進(jìn)行交互,很多人都寫過(guò)文章了,為什么還要繼續(xù)老生常談呢。因?yàn)橛幸恍┘?xì)節(jié)上的東西我們需要注意,因?yàn)檫@些細(xì)節(jié)如果不注意的話,那么程序會(huì)報(bào)錯(cuò),而且維護(hù)性較差。

引言

一.首先,還是那句話,欲練神功,必先自宮。我們開發(fā)程序第一步首先是搭建環(huán)境。

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

  啟動(dòng)Visual Studio ,我的版本是2012啊,不過(guò)這個(gè)不影響的。先創(chuàng)建一個(gè)網(wǎng)站項(xiàng)目, 在項(xiàng)目中加入 Bin 目錄,再添加一個(gè) Index 頁(yè)面。

  然后,我們需要去網(wǎng)上下載 AjaxPro.2.dll 百度一下就一堆鏈接,這里我就不多說(shuō)什么了。然后把下載到的 AjaxPro.2.dll 的文件復(fù)制或引入到 Bin 目錄中。接著,在 Web.config <system.web> 標(biāo)簽下寫入以下內(nèi)容。

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

?
1
2
3
<httpHandlers>
  <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>

  并且在服務(wù)器后臺(tái)類中,作以下修改:

?
1
2
3
4
5
6
7
8
using AjaxPro;
//(1)
 
AjaxPro.Utility.RegisterTypeForAjax(typeof(Index));
//(2)
 
[AjaxPro.AjaxMethod]
//(3)

(1):引入 AjaxPro 命名空間

(2):注冊(cè)類信息到前臺(tái)頁(yè)面

(3):每個(gè)前臺(tái)頁(yè)面需要調(diào)用的函數(shù)前面加上這個(gè)

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

  這里我這有個(gè)實(shí)例,注意一點(diǎn):在 Page_Load() 函數(shù)當(dāng)中,使用了一個(gè)判斷。 if(Page.IsCallback) 它的作用是它 獲得一個(gè)值,表示頁(yè)面請(qǐng)求是否是回調(diào)的結(jié)果。它的一個(gè)特殊的回傳,所以往返總是發(fā)生;但是,與傳統(tǒng)的回發(fā)不同,腳本回調(diào)不會(huì)重繪整個(gè)頁(yè)面。 這是在別的博主那里爬來(lái)的,這是原文,也是個(gè)人的一個(gè)小編程習(xí)慣,我也不知道具體有什么用,但是我就是知道有用。

  以上,咱們就把這個(gè) AjaxPro.2 環(huán)境搭建完了。

二. 接著,就開始調(diào)用了。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Index.aspx.cs" Inherits="Index" %>
 
<!DOCTYPE html>
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>AjaxPro.2.dll</title>
  <script>
    
    function show() {
      //(1)     
      var name = Index.getName().value;
      alert("My Name is :" + name);
 
    }
 
  </script>
</head>
<body>
  <form id="form1" runat="server">
  <div>
    <input type="button" value="show" onclick="show()" />
  </div>
  </form>
</body>
</html>

  這里, Index 是這個(gè)類的類名,不知道還記不記得。咱們寫過(guò)這樣一段代碼 AjaxPro.Utility.RegisterTypeForAjax(typeof(Index)); 在配置環(huán)境的時(shí)候申明的類名。前端頁(yè)面也是通過(guò)這個(gè)找到我們的類的。.value 也是一個(gè)重點(diǎn),我記的我第一次用這個(gè)插件的時(shí)候。返回一個(gè) Password 判斷是否登陸成功,一直都是失敗,這個(gè)插件頁(yè)面用日志信息,我就只能一個(gè)一個(gè) alert 終于讓我抓著了,如果這里不用 value 會(huì)獲取很多實(shí)際應(yīng)用用不上的信息,這里需要注意。

1)以為這樣就可以調(diào)用成功了?太天真了,這里咱們說(shuō)第一個(gè)細(xì)節(jié):改變項(xiàng)目的托管管道模式

鼠標(biāo)單擊選中這個(gè)項(xiàng)目,然后按 F4 鍵,會(huì)出現(xiàn)這個(gè)項(xiàng)目的屬性。將這個(gè)屬性改成傳統(tǒng)型,就行了。如果是集成,則會(huì)報(bào) 500.23

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

2)還有一點(diǎn),也是一個(gè)錯(cuò)誤。這種錯(cuò)誤編譯時(shí)不會(huì)出錯(cuò),加載頁(yè)面時(shí)也不出錯(cuò)。只有調(diào)用到 AjaxPro.2 的是時(shí)候才報(bào)錯(cuò)Uncaught ReferenceError: Index is not defined 當(dāng)調(diào)用后臺(tái)代碼的不起作用時(shí)就需要注意是否是這個(gè)問(wèn)題,因?yàn)檫@個(gè)報(bào)錯(cuò)它不會(huì)出現(xiàn)在頁(yè)面,也不會(huì)被編譯。想要看到這個(gè)錯(cuò)誤,必須按 F12 頁(yè)面調(diào)試,我知道Google Chrome 瀏覽器 的錯(cuò)誤顯示在 Console 選項(xiàng)卡當(dāng)中,其他瀏覽器博主就不是特別清楚了。

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

  這個(gè)錯(cuò)誤的原因啊,博主也查了許多資料,但是很少有具體的描述。這里博主也只能做一個(gè)博主自己的總結(jié),如果有人知道哪里有錯(cuò)誤,希望各位能積極指正(別客氣,互相進(jìn)步啊!!)。博主的分析呢,就是因?yàn)榇罱ōh(huán)境時(shí),又什么地方出了問(wèn)題。 搭建環(huán)境博主剛剛也在前文中講的比較清楚了,如果出現(xiàn)這個(gè)錯(cuò)誤,應(yīng)該有 7 成是這個(gè)原因。

3)這也是一個(gè)博主告訴我的細(xì)節(jié)啊!他這么說(shuō)的:調(diào)用的時(shí)候,不一定要用聲明的那個(gè)類名喔。可以使用 [AjaxNamespace("DEMO")] 這個(gè)標(biāo)簽,對(duì)這個(gè)類進(jìn)行重命名。博主試了一下,確實(shí)是可以的。把這個(gè)標(biāo)簽放在被調(diào)用的類前面,記得是類前面哦。就可以了。

ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解ASP.NET使用AjaxPro實(shí)現(xiàn)前端跟后臺(tái)交互詳解

  可以看到,效果是實(shí)現(xiàn)了的!這個(gè)標(biāo)簽還是非常實(shí)用的。

  非常感謝大家觀看,也希望各位對(duì)博主以上所述的有任何錯(cuò)誤指正,請(qǐng)?jiān)u論告訴我。我會(huì)及時(shí)驗(yàn)證并修改,希望不要誤導(dǎo)他人。非常感謝!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人午夜爽爽爽免费视频 | 91传媒在线观看 | 成人国产在线观看 | 青青网在线视频 | 天堂俺去俺来也www久久婷婷 | 四虎国产精品视频免费看 | 艾秋果冻麻豆老狼 | 麻豆网 | 久久精品一区二区三区资源网 | 日韩在线一区二区三区 | 91会员 | 欧美高清videosex极品 | 欧美日韩国产亚洲一区二区三区 | 91精品国产91热久久久久福利 | 精品久久免费观看 | 欧美日韩一区二区三区免费 | 国产成人手机在线好好热 | 扒开双腿猛进入爽爽视频ai | 亚洲男人天堂a | 99操视频| 成人丁香乱小说 | 久久99热狠狠色AV蜜臀 | 日本h乱淫动漫在线观看 | 黄+色+性+人免费 | 热穴高校 | 欧美一级特黄刺激大片视频 | 久久最新地址获取 | 亚久久伊人精品青青草原2020 | 女色在线观看免费视频 | 免费看一级 | 日韩一区三区 | 精品免费久久久久久成人影院 | 校花被强迫np肉高h 校服下的白嫩小乳尖h1v1 | 精品亚洲永久免费精品 | 精品福利一区 | 99在线观看国产 | 黄色a站| 学生小泬无遮挡女HD | 美女黄板视频 | 色综合91久久精品中文字幕 | 青青在线香蕉国产精品 |