现在我们来观察一下响应(Response)结果如下所示
HTTP/
OK
Server: ASPNET Development Server/
CacheControl: private
ContentType: text/html; charset=utf
ContentLength:
Connection: Close
三关于脚本文件MicrosoftMvcAjaxdebugjs
还记得前面的表单编码中当调用AjaxForm时出现一个UpdateTargetID吗?它所指向的是按钮控件旁边的div元素(相应于其ID值)其实这个div元素内容的填入方式是通过脚本文件MicrosoftMvcAjaxdebugjs控制实现的
为了进一步弄清楚问题的实质我们还是跟蹤到脚本文件MicrosoftMvcAjaxdebugjs的内容中来看一下相关的代码片断吧如下所示
//把结果插入进目标元素中
if (targetElement) { //如果存在目标元素
switch (insertionMode) {
case SysMvcInsertionModeReplace:
targetElementinnerHTML = executorget_responseData();
break;
case SysMvcInsertionModeInsertBefore:
targetElementinnerHTML = executorget_responseData() + targetElementinnerHTML;
break;
case SysMvcInsertionModeInsertAfter:
targetElementinnerHTML = targetElementinnerHTML + executorget_responseData();
break;
}
}
四把对Ajax脚本的引用添加到母版视图
注意在目前(最新版本的Preview )的ASPNET MVC编程中我们必须手工添加相应的Ajax脚本库在本例中我把它们添加到母版视图SiteMaster下如下所示
<script src=
/Content/MicrosoftAjax
debug
js
type=
text/javascript
></script>
<script src=/Content/MicrosoftMvcAjaxdebugjs type=text/javascript></script>
另外还请注意上面的脚本文件MicrosoftMvcAjaxjs是框架最新提供的它(以及另外几个脚本文件)位于你新建的MVC应用程序的Content文件夹下
五小结
最后请记住本文中的项目是在ASPNET MVC Preview 下编写和编译通过的从进一步分析ASPNET MVC目前提供的几个程序集不难看出其目前提供的Ajax支持支持是非常有限的目前从网上搜集到的有关于ASPNET MVC框架内置的Ajax支持文章也非常罕见作为参考读者不妨再研究一下这篇博客文章
http://wwwsingingeelscom/Articles/AJAX_Panels_with_ASPNET_MVCaspx
[] [] []