現在我們來觀察一下響應(Response)結果如下所示
HTTP/
OK
Server: ASP
NET Development Server/
Cache
Control: private
Content
Type: text/html; charset=utf
Content
Length:
Connection: Close
三關於腳本文件MicrosoftMvcAjaxdebugjs
還記得前面的表單編碼中當調用AjaxForm時出現一個UpdateTargetID嗎?它所指向的是按鈕控件旁邊的div元素(相應於其ID值)其實這個div元素內容的填入方式是通過腳本文件MicrosoftMvcAjaxdebugjs控制實現的
為了進一步弄清楚問題的實質我們還是跟蹤到腳本文件MicrosoftMvcAjaxdebugjs的內容中來看一下相關的代碼片斷吧如下所示
//把結果插入進目標元素中
if (targetElement) { //如果存在目標元素
switch (insertionMode) {
case Sys
Mvc
InsertionMode
Replace:
targetElement
innerHTML = executor
get_responseData();
break;
case Sys
Mvc
InsertionMode
InsertBefore:
targetElement
innerHTML = executor
get_responseData() + targetElement
innerHTML;
break;
case Sys
Mvc
InsertionMode
InsertAfter:
targetElement
innerHTML = targetElement
innerHTML + executor
get_responseData();
break;
}
}
四把對Ajax腳本的引用添加到母版視圖
注意在目前(最新版本的Preview )的ASPNET MVC編程中我們必須手工添加相應的Ajax腳本庫在本例中我把它們添加到母版視圖SiteMaster下如下所示
<script src=
/Content/MicrosoftAjax
debug
js
type=
text/javascript
></script>
<script src=
/Content/MicrosoftMvcAjax
debug
js
type=
text/javascript
></script>
另外還請注意上面的腳本文件MicrosoftMvcAjaxjs是框架最新提供的它(以及另外幾個腳本文件)位於你新建的MVC應用程序的Content文件夾下
五小結
最後請記住本文中的項目是在ASPNET MVC Preview 下編寫和編譯通過的從進一步分析ASPNET MVC目前提供的幾個程序集不難看出其目前提供的Ajax支持支持是非常有限的目前從網上搜集到的有關於ASPNET MVC框架內置的Ajax支持文章也非常罕見作為參考讀者不妨再研究一下這篇博客文章
http://wwwsingingeelscom/Articles/AJAX_Panels_with_ASPNET_MVCaspx
[] [] []
From:http://tw.wingwit.com/Article/program/net/201311/15135.html