欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用jQuery輕松實(shí)現(xiàn)Ajax的實(shí)例代碼

 更新時(shí)間:2010年08月16日 15:39:17   作者:  
在Asp.Net的MVC架構(gòu)中使用jQuery是一件很容易的事情,而使用jQuery實(shí)現(xiàn)Ajax更加簡(jiǎn)單。
生成Asp.Net MVC框架后,已經(jīng)包含了jQuery腳本,相關(guān)環(huán)境設(shè)置可參看我的另一篇文章:Asp.Net MVC實(shí)例。這里,我們?nèi)匀唤柚鷮?shí)例中的環(huán)境。在生成的框架中的Scripts文件夾中已經(jīng)可以看到j(luò)Query的腳本。
我們?cè)赥estModel.cs中創(chuàng)建一個(gè)函數(shù),以取得Json數(shù)據(jù),仍然使用Tets表,包含兩個(gè)字段:Id和Name。
復(fù)制代碼 代碼如下:

//JsonDataArray
public static Array GetJsonArray(String name)
{
Array data = null;
try
{
data = (from c in testDb.test
where c.name.Contains(name)
select new { c.id, c.name }).ToArray();
}catch(ArgumentNullException ae)
{}
return data;
}

Json數(shù)據(jù),簡(jiǎn)單來(lái)說(shuō),即使用Key-Value數(shù)組形式的數(shù)據(jù)。然后按默認(rèn)選項(xiàng)創(chuàng)建一個(gè)控制器,生成的控制器只有一個(gè)方法:Index()。我們?cè)賱?chuàng)建一個(gè)方法,以供jQuery調(diào)用。完成的代碼如下:JQueryController.cs。注意:在MVC2.0中默認(rèn)情況中禁止jQuery調(diào)用服務(wù)器數(shù)據(jù),所以必須在代碼中增加訪問(wèn)權(quán)限:JsonRequestBehavior.AllowGet。
復(fù)制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcWeb.Models;
namespace MvcWeb.Controllers
{
public class JQueryController : Controller
{
//
// GET: /JQuery/
public ActionResult Index()
{
return View();
}
public JsonResult FindByName(string name)
{
return Json(TestModel.GetJsonArray(name), JsonRequestBehavior.AllowGet);
}
}
}

然后在Index()上按右鍵,按默認(rèn)選項(xiàng)生成一個(gè)視圖,可在Views/JQuery看到生成的代碼:Index.aspx,生成的代碼非常簡(jiǎn)單,我們?cè)俨迦隨cript代碼,完成如下:
復(fù)制代碼 代碼如下:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
JQuery
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<script src="../../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('#updater').hide();
$('#dataHead').hide();
$('#linkFind').click(function(event) {
event.preventDefault();
$('#dataHead').show();
$('#updater').show();
$.getJSON('/JQuery/FindByName/', { name: $('#textSearch')[0].value }, function(data) {
$('#testList > div').remove();
$.each(data, function(i, item) {
$('#testList').append('<div>' + item.id + ' ' + item.name + '</div>');
});
});
$('#updater').hide();
});
});
</script>
<h2>使用jQuery實(shí)現(xiàn)Ajax實(shí)例</h2>
<div id="query"><%= Html.TextBox("textSearch") %>&nbsp;<a href="#" id="linkFind">搜索</a>&nbsp;&nbsp;&nbsp;
<span class="update" id="updater">&nbsp;Loading...&nbsp;&nbsp;&nbsp;</span></div>
<div id="dataHead" >ID Name</div>
<div id="testList"></div>
</asp:Content>

運(yùn)行項(xiàng)目,在文本框中輸入“t”,按“搜索”,在頁(yè)面沒(méi)有刷新的情況下顯示出查詢到的數(shù)據(jù),如下圖:

另外,在Ajax開(kāi)發(fā)中,還可以使用Ajax的基礎(chǔ)函數(shù)$.ajax進(jìn)行調(diào)試,當(dāng)出現(xiàn)錯(cuò)誤時(shí),可以打印錯(cuò)誤信息。例如,對(duì)上述的調(diào)用可以用下面代碼調(diào)試:
復(fù)制代碼 代碼如下:

<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('#linkFind').click(function(event) {
event.preventDefault();
var handleData = function(data) { alert("success:" + data); }
var handleErr = function(e) {
alert(e.responseText);
}

$.ajax({
type: "get",
url: "/Jquery/FindByName",
data: "name=t",
success: handleData,
error: handleErr
});
});
});
</script>

相關(guān)文章

  • 基于cookie實(shí)現(xiàn)zTree樹(shù)刷新后展開(kāi)狀態(tài)不變

    基于cookie實(shí)現(xiàn)zTree樹(shù)刷新后展開(kāi)狀態(tài)不變

    這篇文章主要為大家詳細(xì)介紹了如何基于cookie實(shí)現(xiàn)zTree樹(shù)刷新后,展開(kāi)狀態(tài)不變,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • jquery彈出框插件jquery.ui.dialog用法分析

    jquery彈出框插件jquery.ui.dialog用法分析

    這篇文章主要介紹了jquery彈出框插件jquery.ui.dialog用法,結(jié)合實(shí)例形式分析了彈出框插件jquery.ui.dialog的功能、下載、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-08-08
  • 簡(jiǎn)單的jquery拖拽排序效果實(shí)現(xiàn)代碼

    簡(jiǎn)單的jquery拖拽排序效果實(shí)現(xiàn)代碼

    寫(xiě)了簡(jiǎn)單的跟隨鼠標(biāo)移動(dòng)效果。這個(gè)拖拽排序的效果的區(qū)別在于: 運(yùn)用了插入insertBefore 和 insertAfter 的方法
    2011-09-09
  • Jquery遍歷Json數(shù)據(jù)的方法

    Jquery遍歷Json數(shù)據(jù)的方法

    這篇文章主要介紹了Jquery遍歷Json數(shù)據(jù)的方法,涉及jQuery遍歷json格式數(shù)據(jù)的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • jq實(shí)現(xiàn)酷炫的鼠標(biāo)經(jīng)過(guò)圖片翻滾效果

    jq實(shí)現(xiàn)酷炫的鼠標(biāo)經(jīng)過(guò)圖片翻滾效果

    一個(gè)酷炫的圖片翻滾效果要實(shí)現(xiàn)這個(gè)效果并不難,只要思路對(duì)了,一切都好辦,下面有個(gè)不錯(cuò)的示例,大家可以參考下
    2014-03-03
  • jQuery實(shí)現(xiàn)的導(dǎo)航下拉菜單效果

    jQuery實(shí)現(xiàn)的導(dǎo)航下拉菜單效果

    這篇文章主要介紹了jQuery實(shí)現(xiàn)的導(dǎo)航下拉菜單效果,涉及jQuery響應(yīng)鼠標(biāo)事件動(dòng)態(tài)操作頁(yè)面元素的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • jQuery 網(wǎng)易相冊(cè)鼠標(biāo)移動(dòng)顯示隱藏效果實(shí)現(xiàn)代碼

    jQuery 網(wǎng)易相冊(cè)鼠標(biāo)移動(dòng)顯示隱藏效果實(shí)現(xiàn)代碼

    顯示隱藏效果的實(shí)現(xiàn)主要是jquery層選擇器的應(yīng)用:當(dāng)鼠標(biāo)移動(dòng)經(jīng)過(guò)照片就顯示設(shè)為封面刪除,移開(kāi)后就隱藏,此效果在web開(kāi)發(fā)中經(jīng)常會(huì)用到,感興趣的朋友可以參考下哈
    2013-03-03
  • jquery dataTable 獲取某行數(shù)據(jù)

    jquery dataTable 獲取某行數(shù)據(jù)

    本篇文章主要介紹了jquery dataTable 獲取某行數(shù)據(jù)的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-05-05
  • 為jQuery添加Webkit的觸摸的方法分享

    為jQuery添加Webkit的觸摸的方法分享

    這段代碼是我在做13年一份兼職的時(shí)候無(wú)聊加上去的,為jQuery添加觸摸事件的支持。因?yàn)樽龅糜悬c(diǎn)無(wú)聊,所以就幫客戶添加了用響應(yīng)式網(wǎng)頁(yè)+JS touch兼容了移動(dòng)設(shè)備,主要是Webkit的移動(dòng)設(shè)備
    2014-02-02
  • JQuery如何按name屬性選擇元素

    JQuery如何按name屬性選擇元素

    這篇文章主要介紹了JQuery如何按name屬性選擇元素問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評(píng)論