ASP.NET MVC輔助方法小結
用了ASP.NET MVC也有一年了,不過一直只會用一些常見功能,照葫蘆畫瓢,對其原理不甚清楚,近來空閒之餘便開始看講解其技術的書籍,才豁然開朗,現做一小結,目的有二:1 鞏固知識點 2.供新手學習。
最直觀的便是舉例說明,請看下面:
@Html.TextBox(“name”,"value",new{id="testid",@class="testclass"})
以前一直不理解為何除了class前邊要加@,其他屬性都無需@,現在才知正是因為Html屬性的class是C#保留字,所以在設定class時,需要加上“@”來跳脫。
再看下例:
@Html.TextBox(“name”,"value",ViewData["Dictionnary"] as IDictionary<string,object>)
public ActionResult Test() { IDictionary<string,object> attr=new Dictionary<string,object>(); attr.add("class","test"); attr.add("style","color:red"); attr.add("size","20"); ViewData["Dictionary"]=attr; return View(); }
上述方法正是為了減少重複,無需在每個TextBox()中都定義相同的html屬性。
下拉選單也如此:
@Html.DropdownList("list",ViewData["item"] as SelectList,"請選擇")
由於ASP.NET MVC窗體只能發出GET和POST請求,為了能提供REST類似的方式來處理DELETE操作,同時又能利用同一個視窗來只允許HttpDelete動作,可以利用Html.HttpMethodOverride()這個輔助方法來模擬HTTP DELETE動作,而模擬的方法其實只是將一個隱藏欄位加入視窗中而已。
@using (Html.BeginForm()) { @Html.HttpMethodOverride(HttpVerbs.Delete) @Html.Hidden("id") <input type="submit" value="刪除" /> }
Ajax輔助方法
使用ajax輔助方法時,必須 在頁面或者MasterPage中載入MicrosoftAjax.js與MicrosoftMvcAjax.js這兩個js檔案,並且載入順序要正確。
最常見的Ajax輔助方法有下面兩個:
Ajax.ActionLink()
Ajax.BeginForm()
eg:
@Ajax.ActionLink("Link Text", "Test", new AjaxOptions { UpdateTargetId="ajax"})
下面對AjaxOptions屬性做一簡單介紹:
1.Conform 單擊時會彈出Conform對話方塊
2.HttpMethod 設定Http請求方法(Get或Post)
3.InsertionMode 設定通過Ajax輔助方法取回資料時要如何將資料插入到目標DOM元素(即UpdateTargetId)中,有三種方法:
InsertionMode.Replace 替代UpdateTargetId屬性指定的內容
InsertionMode.InsertBefore 在UpdateTargetId屬性之前插入
InsertionMode.InsertAfter 在UpdateTargetId屬性之後插入
4.LoadingElementId 在讀取尚未完成時所顯示的文字
5.OnBegin 設定開始時要呼叫的javascript函式名稱
6.OnComplete 設定結束時要呼叫的javascript函式名稱
7.OnFailure 設定失敗時要呼叫的javascript函式名稱
8.OnSuccess 設定成功時要呼叫的javascript函式名稱
9.UpdateTargetId 設定返回值要顯示在哪個Id上
10.Url 設定請求的網址
相關文章
- 建立Laravel自定義Helper輔助方法Laravel
- 通用輔助生成: 使用任意輔助模型加速解碼模型
- 常用輔助類
- 搜狐輔助材料
- 【ASP.NET Core】MVC操作方法如何繫結Stream型別的引數ASP.NETMVC型別
- 如何新增輔助線(幾何問題)如何畫輔助線
- Angular路由——輔助路由Angular路由
- Laravel 輔助函式Laravel函式
- ASP.NET MVC路由ASP.NETMVC路由
- 【猜畫小歌】輔助外掛FunnyDraw江湖召集令
- 自己動手2小時學會配置遊戲輔助遊戲
- Mac小教程:如何在Mac中開啟輔助鍵盤?Mac
- estools 輔助反混淆 JavascriptJavaScript
- 微信小遊戲跳一跳外掛輔助程式遊戲
- ASP.NET MVC 反射例子ASP.NETMVC反射
- win10qq輔助程式停止工作怎麼辦_win10qq提示輔助程式停止工作解決方法Win10
- win10系統下使用Focus對焦輔助的方法Win10
- spring mvc中的@RequestMapping value用法小結SpringMVCAPP
- 小米手環3輔助睡眠檢測怎麼開啟?小米手環3開啟輔助睡眠檢測的方法步驟
- 四邊形輔助線做法
- Android 輔助功能 -搶紅包Android
- 圖形輔助,理解遞迴遞迴
- 五,搭建環境:輔助功能
- 英特爾 Gaudi 加速輔助生成
- Laravel自定義輔助函式Laravel函式
- 1. 輔助函式 dd()函式
- asp.net core mvc 分頁ASP.NETMVC
- ASP.Net MVC過濾器ASP.NETMVC過濾器
- ASP.NET MVC – 安全簡介ASP.NETMVC
- ASP.NET MVC – 模型簡介ASP.NETMVC模型
- 將”ListControl”引入ASP.NET MVCASP.NETMVC
- win10 2345輔助模組怎麼刪除 win10系統徹底刪除2345輔助模組操作方法Win10
- 【備忘】ASP.NET MVC 5 升級到 ASP.NET Core MVC 的部分變化ASP.NETMVC
- 【ASP.NET Core】MVC 控制器的模型繫結(巨集觀篇)ASP.NETMVC模型
- Android 輔助功能 -搶紅包(二)Android
- Android 輔助功能 -搶紅包(三)Android
- 開發常用的輔助函式函式
- 聊聊併發(三)——同步輔助類
- T-SQL——數字輔助表SQL