快速业务通道

ASP.NET MVC案例教程(基于ASP.NET MVC beta)—第五篇:MVC整合Ajax

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
后台去验证,这太费资源了,毕竟恶意攻击者和 JavaScript被屏蔽的浏览器只是少数。所以,在数据被送到后台前,我们应该先进行一遍验证,这样可以节约很多资源。

下面,我们使 用ASP.NET AJAX框架完成客户端的数据验证。

说实话,在ASP.NET MVC中使用ASP.NET AJAX或JQuery实在太方便了,不信你展开Scripts 文件夹,看到没,微软已经把这些库放到里面了,所以,我们要做的只是直接引用。看我们修改后的Release.aspx。

Release.aspx:

1<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Release.aspx.cs" Inherits="MVCDemo.Views.Announce.Release" %>
2<%@ Import Namespace="MVCDemo.Models.Entities" %>
3
4<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
6<html xmlns="http://www.w3.org/1999/xhtml" >
7<head runat="server">
8  <title></title>
9  <script type="text/javascript" src="<%= Url.Content("~/Scripts/MicrosoftAjax.debug.js") % >"></script>
10  <script type="text/javascript" src="<%= Url.Content ("~/Scripts/MicrosoftAjaxValidate.js") %>"></script>
11</head>
12<body>
13  <% SelectList categories = ViewData["Categories"] as SelectList; %>
14  <div>
15     <h1>MVC公告发布系统——发布公告</h1>
16    <% Html.BeginForm ("DoRelease","Announce",FormMethod.Post); %>
17    <dl>
18      <dt>标 题:</dt>
19      <dd><%= Html.TextBox("Title") %></dd>
20       <dd><span id="TitleValidator"></span></dd>
21      <dt>分类: </dt>
22      <dd><%= Html.DropDownList("Category",categories) %></dd>
23       <dd></dd>
24      <dt>内容:</dt>
25      <dd><%= Html.TextArea("Content") %></dd>
26      <dd><span id="ContentValidator"></span></dd>
27    </dl>
28    <input id="Submit" type="submit" value="发布" />
29    <% Html.EndForm(); %>
30   </div>
31</body>
32</html>

改动有两处,首先我们在页头引用了两个js文件,第一个是 ASP.NET AJAX的库文件,第二个就是我们一会要实现的包含验证代码的js文件了。你可能注意到那个Url.Content了,Url是ViewPage的一个对 象,它最常用的一个方法就是Content,它的功能是返回某个文件的路径。一般情况下,在使用了ASP.NET MVC后,目录结构变得有点诡异,像 js、css、图片等与路径(即使是相对路径)引用相关的地方可能会出现问题,但是,只要你在这些地方用Url.Content生成路径,而不是直接 将路径写在页面里,一般就没什么问题了。所以,凡是引用js、css、图片等除,请一定使用Url.Content生成路径,其参数只有一个,就是文 件原始的相对路径。

下一个改动就是显示错误信息的span不再是Html.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号