MVC3----AJAX輔助方法

===================Ajax.ActionLinkhtml

ActionLink方法能夠建立一個具備一步行爲的錨標籤。ajax

例如:c#

給頁面一個連接,點擊連接在當前頁面顯示信息,而不是打開一個新的頁面異步


--視圖代碼:
ide

@Ajax.ActionLink("ajax",//頁面連接名稱
"GetAjax",//控制器中的方法
new AjaxOptions
{
    UpdateTargetId = "getajax",//要替換的標籤
    InsertionMode = InsertionMode.Replace,//插入模式:替換標籤
    HttpMethod = "get"//get請求
})
<!--被操做的標籤-->
<div id="getajax"></div>

--控制器代碼:(返回一個部分視圖到前臺,須要在視圖中建立一個GetAjax.cshtml視圖)this

public ActionResult GetAjax()
{
    return this.PartialView();
}



===================Ajax表單spa

案例:異步查詢數據orm

--視圖代碼:htm

<!--ajax執行失敗時執行一段腳本-->
<script>
    function loadFailure() {
        $("#div1").text("加載失敗");
    }
</script>

@using (Ajax.BeginForm("personSearch",//控制器方法
    "PersonError",//控制器
    new AjaxOptions() { //AjaxOptions對象
    HttpMethod="get",//提交方式
    InsertionMode = InsertionMode.Replace,//插入模式:替換標籤
    UpdateTargetId = "div1",//操做的標籤
    LoadingElementId = "ajax-load",//點擊提交按鈕時,一個顯示加載的狀態(這裏用的是gif加載圖片)
    OnFailure="loadFailure"//當ajax執行失敗時執行一段腳本
}))
{
    <input type="text" name="q" />
    <input type="submit" value="提交" />
    <!--加載的狀態(這裏用的是gif加載圖片)-->
    <img id="ajax-load" src="@Url.Content("~/Content/img/017.gif")" style="display:none" />
}
<!--被操做的標籤-->
<div id="div1"></div>

--控制器代碼:(返回一個部分視圖到前臺,須要在視圖中建立一個personSearch.cshtml視圖對象

public ActionResult personSearch(string q)
{
    var list = db.SchoolTypes.Where(r => r.st_name == q).Select(r => r).ToList();
    return PartialView(list);
}
相關文章
相關標籤/搜索