Html Partial
阿新 • • 發佈:2018-11-14
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
老革命永遠都在遇上各種似是而非的老問題。
這次,是這個Html.Partial,分部頁。
Html.Partial與Html.Action有啥區別呢?區別就是,Html.Partial只有一個檢視,而Html.Action除了檢視,還真的有個Action跟它對應,所以,Html.Action功能比Html.Partial要強。
Html.Partial如何使用呢?
注意看引數如何傳遞和接收。
程式碼一,Html.Partial
@using [email protected]{ var url = ViewData["Url"].ToString();}<button type="button" id="btnSave" class="btn ltblue"><i class="icon-ok"></i> 儲存</button><script type="text/javascript"> $(function(){ $("#btnSave").bind("click",function(){ $.ajax({ url: "@url", data: $('#mainForm').serialize(), type: 'post', success: function (data) { ... }, error: function (e) { ... } }); }); });</script>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
程式碼二、如何呼叫這個Html.Partial
@Html.Partial("_Save", Model, new ViewDataDictionary() { new KeyValuePair<string, object>("Url", Url.StaticFile("~/Admin/Role/EditSave/") + Model.ROLEID) })
- 1
- 2
- 3
- 4
值得一提的是,分部頁與呼叫頁不在同一個目錄下,相反,相隔很遠。那麼如何指明它的位置才能引用呢?要不要這樣寫:
@Html.Partial("~/Views/Shared/_Save")
- 1
答案是無須指明,以上寫法是錯誤的。只需將分部頁放在根目錄下的views/shared/即可,我猜系統會先從呼叫頁所在目錄、所在層的shared 查詢;然後再從根目錄下的views/shared查詢。如果
老革命以前遇到的這個問題:
ASP.NET MVC之Html.RenderAction
以上不全面,分部頁也可以有類似action的,如
public PartialViewResult hehe() { return PartialView(); }
- 1
- 2
- 3
- 4
那麼分部頁與action究竟差別在哪裡呢?
我的理解是
1、檢視對應完整的頁面,分部頁對應一段HTML
所以檢視如果不設定Layout=null的話,系統會配上預設佈局頁,但分部頁沒有這個問題。
2、分部頁既可以有action,也可以沒有,不強制;但檢視一定要有action。如果沒有,那跟分部頁沒有啥區別
3、就算沒有action,也照樣可以將伺服器端變數傳給分部頁