ASP.NET AJAX用戶端編程之旅(五)

來源:互聯網
上載者:User

ASP.NET AJAX用戶端編程之旅(五)——以組件的思想開發Ajax應用:行為、綁定及xml-script

初識行為組件

行為組件一詞中的“行為”是從單詞Behavior直譯過來的。但是我個人認為,就其作用來說,應該叫“屬性賦予組件”更合適一點。因為行為組件實際的作用是:為某一控制項賦予某種屬性。例如ClickBehavior是為某個控制項添加“具有單擊事件”這個屬性,而OpacityBehavior則是為控制項添加“透明顯示”這一屬性。所以,我各人覺得行為組件和“行為”關係不大,而主要是“屬性賦予”。

行為組件發威-讓DIV可以被Click

我們知道,div元素是沒有onclick事件的,如果您的某個程式需要在單擊某個div時產生一個事件,那肯定是要大費一番周折。而ASP.NET AJAX的ClickBehavior組件可以讓我們輕鬆做到這一點。廢話不多講,直接看Demo。

我們要做這麼一個例子:在頁面中有一個DIV,當單擊此DIV時,將使用alert語句彈出一個提示框,程式運行效果如下圖:

下面貼一下具體代碼然後再做分析:

Default.aspx:

1<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
2
3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml">
5<head runat="server">
6  <title>Untitled Page</title>
7</head>
8<body>
9  <form id="form1" runat="server">
10    <asp:ScriptManager ID="ScriptManager1" runat="server">
11      <Scripts>
12        <asp:ScriptReference Assembly="Microsoft.Web.Preview" Name="PreviewScript.js" />
13        <asp:ScriptReference Path="~/ajax.js" />
14      </Scripts>
15    </asp:ScriptManager>
16    <div>
17      <div id="clickme">
18        <h1>點擊我!!!</h1>
19      </div>
20    </div>
21  </form>
22</body>
23</html>

ajax.js:

1var lblClickMe;
2var behaviorClickMe;
3
4Sys.Application.add_init(onPageInit);
5
6function onPageInit()
7{
8  lblClickMe=new Sys.Preview.UI.Label($get("clickme"));
9  lblClickMe.initialize();
10  behaviorClickMe=new Sys.Preview.UI.ClickBehavior($get("clickme"));
11  behaviorClickMe.initialize();
12  behaviorClickMe.add_click(lblClickMe_onClick);
13}
14
15function lblClickMe_onClick()
16{
17  alert("我被點擊了!!!");
18}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.