【Asp.net】总结(三)

什么是AJAX?

  • AJAX:”Asynchronous JavaScript and XML”

  • 中文意思:异步JavaScript和XML。

  • 指一种创建交互式网页应用的网页开发技术。

  • AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词。

  • 不是指一种单一的技术,而是有机地利用了一系列相关的技术:

  • web标准( Standards-Based Presentation )XHTML+CSS的表示,

  • 使用 DOM( Document Object Model )进行动态显示及交互,

  • 使用 XML 和 XSLT 进行数据交换及相关操作,

  • 使用 XMLHttpRequest 进行异步数据查询、检索.

  • 简单理解为:JavaScript + XMLHttpRequest + CSS +服务器端 的集合.

 

AJAX优点

 

readyState属性

readyState属性指出了XMLHttpRequest对象在发送/接收数据过程中所处的几个状态。XMLHttpRequest对象会经历5种不同的状态。

  • 0:未初始化。对象已经创建,但还未初始化,即还没调用open方法;

  • 1:已打开。对象已经创建并初始化,但还未调用send方法;

  • 2:已发送。已经调用send 方法,但该对象正在等待状态码和头的返回;

  • 3:正在接收。已经接收了部分数据,但还不能使用该对象的属性和方法,因为状态和响应头不完整;

  • 4:已加载。所有数据接收完毕

 

JSON 是什么?

  • JSON 的全称是 JavaScript Object Notation,是一种轻量级的数据交换格式。JSON 与 XML 具有相同的特性,例如易于人编写和阅读,易于机器生成和解析。但是 JSON 比 XML 数据传输的性能要高出很多。JSON 完全独立与编程语言,使用文本格式保存。

  •  

  • 那么如何使用 JSON 来作为 GWT 的数据传递格式呢?

  •  第一,引用 HTTP 和 JSON 支持。

  •  第二,在客户端创建 JSON 数据,提交到服务器

  •  第三,在服务器上重写数据格式解析的代码,使之支持 JSON 格式的数据

  •  第四,在服务器上组织 JSON 格式的数据,返回给客户端。

  •  第五,客户端解析服务器传回的 JSON 数据,正确的显示 引用 HTTP 和 JSON 支持

 

 服务端基本属性件介绍 

  • (1)ClientID,控件在客户端的Id,控件在服务端的Id不一定等于客户端HTML中的Id,比如说在ListView等控件的模板中。因此如果要在客户端通过JavaScript Dom、JQuery的getElementById、$(“#id”)来操作控件的话最好不要直接写服务端Id,而是$(‘#<%=txt1.ClientID%>’)。用JQuery事件设置鼠标移到控件上和从控件移开的不同样式。在用户控件中就可以看到ClientID和id的不同。UserControl、母版、ListView。推荐永远用ClientID

  • (2)Visible 属性, 控件是否可见,如果Visible=False是不会转到HTML中的,这和在HTML中给元素style.display='none'效果是不一样的。

  • (3)CssClass 属性,控件的样式名,就是HTML中控件的class属性。也可以单独修改BackColor、BorderStyle等属性,但是不建议这么做,因为会生成很多的内联样式,生成html尺寸大,不便于统一的修改。

  • (4)Attributes,用来设置获取控件的额外属性。和Dom中的setAttribute()、getAttribute()是一样的。Button1.Attributes[“a1”] = “2.jpg”; HTML 事件在服务端看来也是属性 Button1.Attributes[“onmouseover”] = “alert(‘hello’)”;

 

服务端基本控件1

  • 1、Label控件。Text属性为显示文本。AssociatedControlID属性用来关联一个控件,如果为空的话会展示为一个<Span>,如果指定为一个控件的id,则会展示为一个HTML中的<Label>并且将for属性设置为被关联控件的ClientId。

  • 2、Literal控件也是展示一段文本,但是Literal控件不会渲染任何额外的标签,就是将Text属性的值展示出来而已。

  • 3、TextBox控件,文本框控件。TextMode属性取值SingleLine、MultiLine、Password,分别渲染为input(type=text)、textarea和input(type=password)。当AutoPostBack属性为true的时候,用户焦点离开TextBox就会造成页面Post,实现原理就是讲ASP.Net原理时的AutoPostBack。TextChanged事件(需要AutoPostBack=true才会修改后触发,否则是页面提交才触发),文本发生变化的时候事件触发。(以Post方式提交表单)ASP.Net中要提交表单的时候最好调用__doPostBack方法。

  • 4、RadioButton控件,对应为input(type=radio),通过GroupName属性进行分组

  • 5、Button控件。OnClientClick属性,当用户点击按钮的时候在浏览器端执行的代码,注意OnClientClick是字符串属性,写的代码是JavaScript代码,运行在浏览器端。<asp:Button ID="btnDel" runat="server" onclientclick="return confirm('真的要删除吗?')" Text="删除" />

  • 6、LinkButton,用法和Button差不多,区别就是Button控件渲染为按钮,而LinkButton渲染为超链接。不要用LinkButton来实现普通的超链接,因为LinkButton的href为一段javascript代码,进行的是表单的Post,无法“在新窗口中打开连接”。和讲“行删除”那个例子中href为javascript的超链接原理一样。一般用Button就行,只有用户要求“长成超链接好”采用LinkButton,就是一个在浏览器中渲染成超链接,服务端当成按钮用的东西。

  • HyperLink:IsPostBack=False,没有提交表单内容,没有OnClick事件。

  • 7、ImageButton控件也和Button差不多,只不过是显示为图片,渲染为input(type=image)

  • 8、Button、LinkButton、ImageButton等控件都有CommandName、CommandArgument两个属性和Command事件,可以让多个按钮控件共享一个Command事件处理函数,通过读取事件对象e的CommandName、CommandArgument两个属性读取被点击按钮上设置的这两个参数来执行不同的操作。例子:编辑、删除多行数据。这种用法在ListView等控件中用的最多。

 

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值