telerik学习记录-RadButton(下)
目錄
服務器端編程
屬性和事件
RadButton常用功能(屬性)
圖標特定功能(屬性)
圖像特定特征(屬性)
SplitButton特定功能(屬性)
類型:按鈕特定功能(屬性)
類型:LInkButton特定功能(屬性)
類型:ToggleButton特定功能(屬性)
RadButtonToggleState特定功能(屬性)
服務器端事件
方法
類型:ToggleButton具體方法
客戶端編程
概述
獲取RadButton客戶端對象
客戶端對象模型
RadButtonToggleState
RadButton客戶端事件
OnClientCheckChanged
OnClientCheckedChanging
OnClientClicking
OnClientClicked
OnClientMouseOver
OnClientMouseOut
OnClientToggleStateChanging
OnClientToggleStateChanged
RadButton 驗證和客戶端事件處理程序
服務器端編程
屬性和事件
RadButton常用功能(屬性)
| ButtonType | 獲取或設置按鈕的類型。存在以下類型:StandardButton(默認)、LinkBut??ton、ToggleButton。每個 ButtonType 都提供了某些獨特的功能。可以在每個按鈕類別中找到有關不同按鈕類型功能的更多信息。 |
| AutoPostBack | 獲取或設置一個布爾值,該值指示控件是否會自動將頁面發送回服務器。 |
| CausesValidation | 獲取或設置一個布爾值,該值指示單擊 RadButton 時是否執行驗證。 |
| Primary | 獲取或設置一個布爾值,該值指示按鈕是否使用其主要外觀。 |
| PostbackUrl | 當單擊 RadButton 時,獲取或設置要從當前頁面發布到的頁面的 URL。 |
| Text | 獲取或設置顯示在 RadButton 控件中的文本。 |
| ValidationGroup | 獲取或設置一組控件,當 RadButton 控件回發到服務器時,它會對其進行驗證。 |
| CommandName | 獲取或設置與傳遞給Command事件的 RadButton 控件關聯的命令名稱。 |
| CommandArgument | 獲取或設置與關聯的 CommandName 一起傳遞給Command事件的可選參數。 |
| HoveredCssClass | 當鼠標指針懸停在 RadButton 控件上時,獲取或設置 CSS 類。 |
| PressedCssClass | 當按下 RadButton 控件時,獲取或設置 CSS 類。 |
| OnClientLoad | 設置將在頁面上加載 RadButton 時調用的 JavaScript 函數的名稱 |
| OnClientClicking | 設置單擊 RadButton 時將調用的 JavaScript 函數的名稱。活動可以取消。 |
| OnClientClicked | 設置在 OnClientClicking 事件之后單擊 RadButton 時將調用的 JavaScript 函數的名稱。 |
| OnClientMouseOver | 設置當鼠標指針懸停在 RadButton 上時將調用的 JavaScript 函數的名稱 |
| OnClientMouseOut | 設置當鼠標指針離開 RadButton 時將調用的 JavaScript 函數的名稱 |
| OnClientCheckedChanged | 設置將在 RadButton 的鼠標 Checked 屬性更改時調用的 JavaScript 函數的名稱 |
| OnClientToggleStateChanging | 設置將在 RadButton 的切換狀態更改時調用的 JavaScript 函數的名稱。該事件是可取消的,當取消時,不會引發OnClientCheckedChanged和OnClientToggleStateChanged 。 |
| OnClientToggleStateChanged | 設置在OnClientToggleStateChanging事件之后,當 RadButton 的切換狀態發生更改時將調用的 JavaScript 函數的名稱。 |
圖標特定功能(屬性)
| ShowSecondaryIcon | 獲取或設置一個布爾值,指示 RadButton 是否將顯示 |
| PrimaryIconUrl | 獲取或設置用作主圖標的圖像的 URL。 |
| PrimaryHoveredIconUrl | 獲取或設置主圖標懸停時顯示的圖像的 URL |
| PrimaryPressedIconUrl | 獲取或設置按下主圖標時顯示的圖像的 URL |
| PrimaryIconHeight | 獲取或設置主圖標的高度 |
| PrimaryIconWidth | 獲取或設置主圖標的寬度 |
| PrimaryIconCssClass | 獲取或設置應用于主圖標的 CSS 類。 |
| SecondaryIconUrl | 獲取或設置用作輔助圖標的圖像的 URL |
| SecondaryHoveredIconUrl | 獲取或設置第二圖標懸停時顯示的圖像的 URL |
| SecondaryPressedIconUrl | 獲取或設置按下輔助圖標時顯示的圖像的 URL |
| SecondaryIconHeight | 獲取或設置輔助圖標的高度 |
| SecondaryIconWidth | 獲取或設置輔助圖標的寬度 |
| SecondaryIconCssClass | 獲取或設置應用于輔助圖標的 CSS 類。 |
| PrimaryIconTop | 獲取或設置主圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconLeft | 獲取或設置主圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconRight | 獲取或設置主圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconBottom | 獲取或設置主圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconTop | 獲取或設置輔助圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconLeft | 獲取或設置輔助圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconRight | 獲取或設置輔助圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconBottom | 獲取或設置輔助圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
圖像特定特征(屬性)
| IsBackgroundImage | 獲取或設置一個布爾值,指示如何使用圖像 - 即作為背景圖像或圖像按鈕。 |
| ImageUrl | 獲取或設置用作按鈕的圖像的 URL。 |
| HoveredImageUrl | 獲取或設置 RadButton 懸停時顯示的圖像的 URL |
| PressedImageUrl | 獲取或設置按下 RadButton 時顯示的圖像的 URL |
| EnableImageButton | 獲取或設置一個布爾值,該值指示 RadButton 是否呈現為圖像按鈕 |
SplitButton特定功能(屬性)
| EnableSplitButton | 獲取或設置一個布爾值,該值指示是否將啟用 SplitButton 功能 |
| SplitButtonPosition | 獲取或設置 SplitButton 相對于主按鈕(左或右)出現的位置。位置:右(默認),左 |
| SplitButtonCssClass | 獲取或設置應用于 SplitButton 的 CSS 類 |
類型:按鈕特定功能(屬性)
| UseSubmitBehavior | 獲取或設置一個布爾值,該值指示 RadButton 控件是使用客戶端瀏覽器的提交機制還是 ASP.NET 回發機制。 |
類型:LInkButton特定功能(屬性)
| NavigateUrl | 獲取或設置要導航到的頁面的 URL,而不會將頁面發回服務器。設置此屬性時,按鈕將呈現為(錨)元素。 |
| Target | 獲取或設置在單擊 RadButton 控件時顯示鏈接到的網頁內容的目標窗口或框架。 |
類型:ToggleButton特定功能(屬性)
| ToggleType | 獲取或設置切換按鈕的類型。共有三種切換類型:None(默認)、Radio、CheckBox、CustomToggle |
| GroupName | 在 ToggleType: Radio 時有效。獲取或設置單選按鈕所屬組的名稱。 |
| Checked | 獲取或設置一個布爾值,該值指示是否選中了 RadButton 控件。在 ToggleButton 具有多于 2(兩個)狀態的情況下,在 RadButton 的當前狀態為 First 狀態的情況下不檢查控件,在所有其他情況下為 Checked。 |
| SelectedToggleState | 獲取或設置 RadButton 的當前狀態。 |
| SelectedToggleStateIndex | 當用作自定義切換按鈕時,獲取或設置 RadButton 控件當前選定的 ToggleState 的索引。 |
| ToggleStates | RadButtonToggleState的集合。不同的狀態是通過狀態集合來控制的。集合最多可以包含四個狀態。切換狀態的順序由集合中狀態出現的從 0 開始的位置索引確定。因此,ToggleStates 中的第一項是第一個狀態,第二項是第二個狀態,依此類推。當 ToggleType 為 Radio 或 CheckBox 時,ToggleStates 的第一項(狀態)用作 RadButton 的備用狀態。 |
RadButtonToggleState特定功能(屬性)
| Text | 獲取或設置顯示在 RadButton 控件中的文本 |
| Selected | 獲取或設置一個布爾值,該值指示是否選擇了 ToggleState |
| CssClass | 獲取或設置應用于 RadButton 控件的 CSS 類 |
| HoveredCssClass | 獲取或設置當鼠標指針懸停在控件上時應用于 RadButton 控件的 CSS 類 |
| PressedCssClass | 獲取或設置在按下控件時應用于 RadButton 控件的 CSS 類 |
| Width | 獲取或設置 RadButton 控件的寬度 |
| Height | 獲取或設置 RadButton 控件的高度 |
| PrimaryIconUrl | 獲取或設置用作主圖標的圖像的 URL |
| PrimaryHoveredIconUrl | 獲取或設置主圖標懸停時顯示的圖像的 URL |
| PrimaryPressedIconUrl | 獲取或設置按下主圖標時顯示的圖像的 URL |
| PrimaryIconHeight | 獲取或設置主圖標的高度 |
| PrimaryIconWidth | 獲取或設置主圖標的寬度 |
| PrimaryIconCssClass | 獲取或設置應用于主圖標的 CSS 類 |
| SecondaryIconUrl | 獲取或設置用作主圖標的圖像的 URL |
| SecondaryHoveredIconUrl | 獲取或設置主圖標懸停時顯示的圖像的 URL |
| SecondaryPressedIconUrl | 獲取或設置按下主圖標時顯示的圖像的 URL |
| SecondaryIconHeight | 獲取或設置主圖標的高度 |
| SecondaryIconWidth | 獲取或設置主圖標的寬度 |
| SecondaryIconCssClass | 獲取或設置應用于主圖標的 CSS 類 |
| PrimaryIconTop | 獲取或設置主圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconLeft | 獲取或設置主圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconRight | 獲取或設置主圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| PrimaryIconBottom | 獲取或設置主圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconTop | 獲取或設置輔助圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconLeft | 獲取或設置輔助圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconRight | 獲取或設置輔助圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| SecondaryIconBottom | 獲取或設置輔助圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
| ImageUrl | 獲取或設置用作按鈕的圖像的 URL |
| HoveredImageUrl | 獲取或設置 RadButton 懸停時顯示的圖像的 URL |
| IsBackgroundImage | 獲取或設置一個布爾值,指示如何使用圖像 - 即作為背景圖像或圖像按鈕 |
服務器端事件
| OnClick | 單擊 RadButton 時引發。(自動回發=真) |
| OnCommand | 當 RadButton 指定了 Command 時引發。 |
| OnCheckedChanged | 當帶有 ButtonType:ToggleButton 的 RadButton 的 Checked 屬性發生更改時引發 |
| OnToggleStateChanged | 當帶有 ButtonType:ToggleButton 的 RadButton 的 State 屬性發生更改時引發 |
方法
類型:ToggleButton具體方法
| FindToggleStateByText | 通過其Text屬性的值查找 RadButton 的 ToggleState 。采用String類型的單個參數,該參數指定 ToggleState 的文本。 |
| FindToggleStateByValue | 通過其Value屬性的值查找 RadButton 的 ToggleState 。采用String類型的單個參數,該參數指定 ToggleState 的值 |
| SetSelectedToggleStateByText | 通過提供的文本設置選定狀態。如果多個 ToggleState 具有相同的文本,則將選擇第一個。如果未注冊具有提供文本的 ToggleState,則不會更改當前 ToggleState。采用String類型的單個參數,該參數指定要選擇的 ToggleState 的文本 |
| SetSelectedToggleStateByValue | 通過提供的值設置選定的狀態。如果多個 ToggleStates 具有相同的值,則將選擇第一個。如果未注冊具有提供值的 ToggleState,則不會更改當前 ToggleState。采用String類型的單個參數,該參數指定要選擇的 ToggleState 的值 |
客戶端編程
概述
RadButton提供了一個靈活的客戶端 API。可以使用 RadButton 客戶端對象輕松地與瀏覽器中的按鈕進行交互。除了各種客戶端事件之外,客戶端對象模型還可以讓您完成復雜的任務,同時避免不必要的回發。
獲取RadButton客戶端對象
RadButton使用按鈕的ClientID創建一個客戶端對象。可以使用以下 JavaScript 代碼獲取參考:
var button = $find("<%= RadButton1.ClientID %>"); var button = $telerik.findButton("<%= RadButton1.ClientID %>");客戶端對象模型
Telerik?RadButton在客戶端提供以下對象
| .add_load() | 控件加載時調用的 javascript 函數的名稱 |
| .remove_load() | 刪除加載事件的處理程序 |
| .add_clicking() | 單擊 RadButton 控件時調用的 javascript 函數的名稱 |
| .remove_clicking() | 刪除單擊事件的處理程序 |
| .add_clicked() | 單擊 RadButton 控件時調用的 javascript 函數的名稱 |
| .remove_clicked() | 刪除單擊事件的處理程序 |
| .add_mouseOver() | 當鼠標懸停在控件上時調用的 javascript 函數的名稱 |
| .remove_mouseOver() | 刪除 mouseOver 事件的處理程序。 |
| .add_mouseOut() | 鼠標離開控件時 javascript 函數的名稱 |
| .remove_mouseOut() | 刪除 mouseOut 事件的處理程序 |
| .add_checkedChanging() | 即將更改 RadButton 控件的 Checked 屬性時調用的 javascript 函數的名稱 |
| .remove_checkedChanging() | 刪除 checkedChanging 事件的處理程序 |
| .add_checkedChanged() | 更改 RadButton 控件的 Checked 屬性后調用的 javascript 函數的名稱。 |
| .remove_checkedChanged() | 刪除 checkedChanged 事件的處理程序 |
| .add_toggleStateChanging() | 將要更改 RadButton 控件的 SelectedToggleStateIndex 屬性時調用的 javascript 函數的名稱 |
| .remove_toggleStateChanging() | 刪除 toggleStateChanging 事件的處理程序 |
| .add_toggleStateChanged() | 在 RadButton 控件的 SelectedToggleStateIndex 屬性更改后調用的 javascript 函數的名稱 |
| .remove_toggleStateChanged() | 刪除 toggleStateChanged 事件的處理程序 |
| .clearCheckedRadios() | 清除具有指定 GroupName 的單選按鈕的選中狀態 |
| .focus() | 將焦點帶到 RadButton 控件 |
| .click() | 執行程序化按鈕單擊。接受一個可選的布爾參數,該參數指定當以編程方式單擊控件時是否會觸發 RadButton的客戶端單擊事件。如果沒有參數調用該函數,則不會觸發 click 事件。 |
| .get_enabled() | 返回一個值,指示是否啟用按鈕控件 |
| .set_enabled() | 設置按鈕是否啟用。將 true 參數設置為啟用,或設置為 false 以禁用按鈕 |
| .get_readOnly() | 返回一個值,指示按鈕控件是否處于只讀模式。 |
| .set_readOnly() | 設置一個值,指示按鈕控件是否處于只讀模式。 |
| .get_text() | RadButton 控件中顯示的文本 |
| .set_text() | 設置顯示在 RadButton 控件中的文本 |
| .get_toolTip() | 獲取當鼠標指針懸停在 RadButton 控件上時顯示的文本 |
| .set_toolTip() | 設置當鼠標指針懸停在 RadButton 控件上時顯示的文本 |
| .get_uniqueID() | 獲取 RadButton 控件的唯一、分層限定標識符。 |
| .get_checked() | 獲取一個布爾值,該值指示是否選中了 RadButton 控件 |
| .set_checked() | 設置一個布爾值,指示是否選中 RadButton 控件。 |
| .get_buttonType() | 獲取按鈕的類型 |
| .get_toggleType() | 獲取 RadButton 用作切換按鈕時的切換類型。 |
| .get_target() | 獲取在單擊 RadButton 控件時顯示鏈接到的網頁內容的目標窗口或框架。此屬性特定于配置為LinkBut??ton?(?ButtonType?="LinkBut??ton"?) 的 RadButton |
| .set_target() | 設置在單擊 RadButton 控件時顯示鏈接到的網頁內容的目標窗口或框架。此屬性特定于配置為LinkBut??ton?(?ButtonType?="LinkBut??ton"?) 的 RadButton |
| .get_navigateUrl() | 獲取單擊 RadButton 控件時要鏈接到的 URL。此屬性特定于配置為LinkBut??ton?(?ButtonType?="LinkBut??ton"?) 的 RadButton |
| .set_navigateUrl() | 設置單擊 RadButton 控件時要鏈接到的 URL。此屬性特定于配置為LinkBut??ton?(?ButtonType?="LinkBut??ton"?) 的 RadButton |
| .get_primaryIconElement() | 獲取對包含主圖標的 HTML 元素的引用 |
| .get_secondaryIconElement() | 獲取對包含輔助圖標的 HTML 元素的引用 |
| .get_textElement() | 獲取對包含 RadButton 控件文本的 HTML 元素的引用 |
| .get_cssClass() | 獲取由客戶端上的 RadButton 控件呈現的級聯樣式表 (CSS) 類 |
| .get_disabledCssClass() | 獲取禁用控件時應用的 CSS 類 |
| .get_hoveredCssClass() | 獲取當鼠標指針懸停在控件上時應用于 RadButton 控件的 CSS 類 |
| .get_pressedCssClass() | 獲取按下控件時應用于 RadButton 控件的 CSS 類。 |
| .get_commandName() | 獲取與傳遞給 Command 事件的 RadButton 控件關聯的命令名稱 |
| .set_commandName() | 設置與傳遞給 Command 事件的 RadButton 控件關聯的命令名稱 |
| .get_commandArgument() | 獲取傳遞給 Command 事件的可選參數以及關聯的 CommandName |
| .set_commandArgument() | 設置傳遞給 Command 事件的可選參數以及關聯的 CommandName |
| .get_autoPostBack() | 獲取一個 bool 值,該值指示 RadButton 控件在單擊時是否自動回發到服務器 |
| .set_autoPostBack() | 設置或設置一個布爾值,指示 RadButton 控件在單擊時是否自動回發到服務器 |
| .get_toggleStates() | 獲取屬于 RadButton 控件的 RadButtonToggleState 對象的集合 |
| .get_selectedToggleState() | 當用作自定義切換按鈕時,獲取 RadButton 控件當前選定的 ToggleState |
| .get_selectedToggleStateIndex() | 當用作自定義切換按鈕時,獲取 RadButton 控件當前選定的 ToggleState 的索引 |
| .set_selectedToggleStateIndex() | 當用作自定義切換按鈕時,設置 RadButton 控件當前選定的 ToggleState 的索引 |
| .get_groupName() | 獲取 ToggleType=Radio 的 RadButton 所屬的組的名稱 |
| .get_height() | 獲取 RadButton 控件的高度 |
| .get_width() | 獲取 RadButton 控件的寬度 |
| .get_enableSplitButton() | 指定“拆分按鈕”功能是否啟用/禁用。 |
| .IsImageButton() | 獲取一個布爾值,指示按鈕是否為圖像按鈕 |
| .IsInputTypeSubmit() | 獲取一個布爾值,指示按鈕是否為提交按鈕 |
| .get_singleClick() | 獲取一個 bool 值,指示 RadButton 控件在用戶單擊后是否立即禁用。(即啟用/禁用“單擊”功能) |
| .get_singleClickText() | 獲取單擊和禁用按鈕后顯示在 RadButton 控件中的文本。(即用于“單擊”功能的文本) |
| .enableAfterSingleClick() | 通過單擊禁用按鈕后,啟用按鈕并恢復按鈕的文本 |
| .get_visible() | 獲取一個布爾值,指示按鈕是否可見 |
| .set_visible() | 顯示/隱藏按鈕 |
| .get_validationGroup() | 獲取 RadButton 分配到的 ValidationGroup 的名稱 |
| .set_validationGroup() | 設置應分配 RadButton 的驗證組 |
RadButtonToggleState
| .get_index() | 獲取 ToggleStates 集合中 ToggleState 對象的從 0 開始的索引 |
| .get_text() | 獲取顯示在 RadButton 控件中的文本 |
| .get_cssClass() | 獲取應用于 RadButton 控件的 CSS 類 |
| .get_hoveredCssClass() | 獲取當鼠標指針懸停在控件上時應用于 RadButton 控件的 CSS 類 |
| .get_pressedCssClass() | 獲取按下控件時應用于 RadButton 控件的 CSS 類 |
| .get_height() | 獲取 RadButton 控件的高度 |
| .get_width() | 獲取 RadButton 控件的寬度 |
| .get_primaryIconCssClass() | 獲取應用于主圖標的 CSS 類 |
| .get_primaryIconUrl() | 獲取用作主圖標的圖像的 URL |
| .get_primaryHoveredIconUrl() | 獲取主圖標懸停時顯示的圖像的 URL |
| .get_primaryPressedIconUrl() | 獲取按下主圖標時顯示的圖像的 URL |
| .get_primaryIconHeight() | 獲取主圖標的高度 |
| .get_primaryIconWidth() | 獲取主圖標的寬度 |
| .get_primaryIconTop() | 獲取主圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| .get_primaryIconLeft() | 獲取主圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| .get_primaryIconBottom() | 獲取主圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
| .get_primaryIconRight() | 獲取主圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| .get_secondaryIconCssClass() | 獲取應用于輔助圖標的 CSS 類 |
| .get_secondaryIconUrl() | 獲取用作輔助圖標的圖像的 URL |
| .get_secondaryHoveredIconUrl() | 獲取第二圖標懸停時顯示的圖像的 URL |
| .get_secondaryPressedIconUrl() | 獲取按下輔助圖標時顯示的圖像的 URL |
| .get_secondaryIconHeight() | 獲取輔助圖標的高度。 |
| .get_secondaryIconWidth() | 獲取輔助圖標的寬度 |
| .get_secondaryIconTop() | 獲取輔助圖標的上邊緣,相對于 RadButton 控件的包裝元素 |
| .get_secondaryIconLeft() | 獲取輔助圖標的左邊緣,相對于 RadButton 控件的包裝元素 |
| .get_secondaryIconBottom() | 獲取輔助圖標的底部邊緣,相對于 RadButton 控件的包裝元素 |
| .get_secondaryIconRight() | 獲取輔助圖標的右邊緣,相對于 RadButton 控件的包裝元素 |
| .get_isBackgroundImage() | 獲取一個布爾值,指示如何使用 iImage - 即作為背景圖像或作為圖像按鈕 |
| .get_imageUrl() | 獲取要在 RadButton 控件中顯示的圖像的位置 |
| .get_hoveredImageUrl() | 當鼠標指針懸停在控件上時,獲取要在 RadButton 控件中顯示的圖像的位置 |
| .get_pressedImageUrl() | 獲取按下控件時要在 RadButton 控件中顯示的圖像的位置 |
RadButton客戶端事件
RadButton 公開了幾個客戶端事件,允許在廣泛的應用場景中輕松靈活地使用:
OnClientLoad (load) - 在控件初始化時引發。
OnClientClicking(clicking) - 當用戶點擊按鈕時引發。活動可以取消。
OnClientClicked (clicked) - 單擊按鈕時引發。該事件在OnClientClicking事件之后。
OnClientMouseOver (mouseOver) - 當鼠標懸停在控件上時引發。
OnClientMouseOut (mouseOut) - 當鼠標離開控件時引發。
OnClientCheckedChanging (checkedChanging) - 當 RadButton 控件的Checked屬性即將更改時引發。活動可以取消。
OnClientCheckedChanged (checkedChanged) - 在 RadButton 控件的Checked屬性更改后引發。
OnClientToggleStateChanging (toggleStateChanging) - 引發了即將更改的 RadButton 控件的SelectedToggleStateIndex屬性。活動可以取消。
OnClientToggleStateChanged (toggleStateChanged) - 在RadButton控件的SelectedToggleStateIndex屬性更改后引發。
可以在服務器和客戶端上設置任何事件的事件處理程序方法。
服務器端
要處理所需的事件,用戶必須將相應的屬性設置為處理事件的 JavaScript 函數的名稱或匿名 JavaScript 函數。這是一個例子:
- 傳遞命名(非匿名)JavaScript 函數
- 傳遞匿名 JavaScript 函數
客戶端
要處理所需的事件,用戶應使用相應的add_(處理函數)附加所需的處理程序(即add_clicked用于單擊事件),其中參數handlerFunction應該是function類型。要刪除之前添加的處理程序,相應的remove_(處理函數)應該使用。
這是一個顯示如何在客戶端上添加處理程序的示例:
- 添加命名(非匿名)JavaScript 函數
- 添加匿名 JavaScript 函數
OnClientCheckChanged
checkedChanged事件在 RadButton 的 Checked 屬性更改后觸發,并且在checkedChanging事件 (OnClientCheckedChanging) 之后。僅當ToggleType屬性設置為 [Telerik.Web.UI] 時才會觸發該事件。ButtonToggleType.CheckBox或ButtonToggleType.Radio即當控件用作 RadioButton 或 CheckBox 時。用戶無法取消該事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonCheckedEventArgs,包含以下屬性和方法:
- get_checked() - 返回一個布爾值,指示按鈕是否被選中。
- get_toggleType () - 返回 RadButton 的 ButtonToggleType。它可以是ButtonToggleType.CheckBox或ButtonToggleType.Radio。
- get_commandName() - 返回分配給 RadButton 的CommandName屬性的值。
- get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值。
當用戶想要在按鈕更改其選中狀態時執行自定義客戶端代碼時,此事件很有用。例如,下面的代碼在按鈕被選中時顯示一個 RadWindow 控件,而在未選中時隱藏它。
<script type="text/javascript">function ShowHideWindow(sender, args){var oWnd = $find("<%=RadWindow1.ClientID %>");if (args.get_checked()){oWnd.show();}else{oWnd.hide();}} </script><telerik:RadButton RenderMode="Lightweight" ID="RadButton1" runat="server" Text="Show/Hide Window" ToggleType="CheckBox"ButtonType="ToggleButton" OnClientCheckedChanged="ShowHideWindow" AutoPostBack="false"> </telerik:RadButton><telerik:RadWindow RenderMode="Lightweight" ID="RadWindow1" runat="server" NavigateUrl="https://www.telerik.com"> </telerik:RadWindow>OnClientCheckedChanging
checkedChanging事件在 RadButton 的 Checked 屬性更改后觸發,并且在checkedChanging事件 (OnClientCheckedChanging) 之后。僅當ToggleType屬性設置為 [Telerik.Web.UI] 時才會觸發該事件。ButtonToggleType.CheckBox或ButtonToggleType.Radio即當控件用作 RadioButton 或 CheckBox 時。用戶無法取消該事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonCheckedEventArgs,包含以下屬性和方法:
- get_cancel() - 返回一個布爾值,指示事件是否被取消。True 表示事件被取消。
- set_cancel(?shouldCancel?) - 設置一個布爾值,指示事件是否將被取消。設置為 true 意味著事件將被取消。
- get_toggleType () - 返回 RadButton 的 ButtonToggleType。它可以是ButtonToggleType.CheckBox或ButtonToggleType.Radio。
- get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
- get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值。
此事件在用戶希望確保僅在滿足特定條件時才選中按鈕(單選或復選框)的情況下很有用。請注意,如果按鈕自動回發到服務器,這是默認行為,即使取消事件,回發也不會停止。
以下示例要求用戶確認 CheckBox 的檢查。代碼如下:
<script type="text/javascript">function CheckedChanging(sender, args){args.set_cancel(!window.confirm("Are you sure you want to check the button?"));} </script><telerik:RadButton RenderMode="Lightweight" ID="RadButton1" runat="server" Text="Checkbox" ToggleType="CheckBox" ButtonType="ToggleButton" OnClick="RadButton1_Click" OnClientCheckedChanging="CheckedChanging"> </telerik:RadButton> protected void RadButton1_Click(object sender, System.EventArgs e) {RadButton1.Text = "RadButton.Checked=" + RadButton1.Checked.ToString(); }OnClientClicking
單擊 RadButton 控件時,即釋放鼠標按鈕后立即發生單擊事件。該事件在客戶端驗證發生后觸發,并且可以取消。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonCancelEventArgs,包含以下屬性和方法:
-
IsSplitButtonClick() - 返回一個布爾值,指示是否單擊了拆分按鈕或主按鈕。True 表示單擊了拆分按鈕。
-
get_cancel() - 返回一個布爾值,指示事件是否被取消。True 表示事件被取消。
-
set_cancel(?shouldCancel?) - 設置一個布爾值,指示事件是否將被取消。設置為 true 意味著事件將被取消。
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值
當用戶想要取消頁面提交,或者基于特定條件阻止其他客戶端事件的執行時,該事件會派上用場。一種這樣的情況是確認頁面已提交到服務器。我們詢問用戶是否要提交頁面,如果收到否定答案,我們取消點擊事件。這是代碼:
<script type="text/javascript">function Clicking(sender, args){args.set_cancel(!window.confirm("Are you sure you want to submit the page?"));} </script> <telerik:RadButton RenderMode="Lightweight" ID="RadButton1" runat="server" Text="Submit" OnClientClicking="Clicking" OnClick="RadButton1_Click"> </telerik:RadButton> protected void RadButton1_Click(object sender, System.EventArgs e) {RadButton1.Text = "RadButton was clicked at: " + DateTime.Now.ToString(); }OnClientClicked
clicked事件在click 事件之后,在單擊RadButton 控件時發生。該事件在客戶端驗證完成后、頁面提交之前觸發,并且不能取消。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonEventArgs,包含以下屬性和方法:
-
IsSplitButtonClick () - 返回一個布爾值,指示是單擊拆分按鈕還是主按鈕。True 表示單擊了拆分按鈕。
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值
此事件應該用于用戶需要在單擊按鈕時執行自定義客戶端代碼的場景。由于發生了驗證,因此可以在執行任何客戶端代碼之前檢查頁面的有效性。這正是下面的示例所做的,它檢查一個有效的 URL,如果輸入了一個有效的 URL,它會在 RadWindow 控件中打開它。這是代碼:
<script type="text/javascript">function OpenWindow(sender, args){if (Page_IsValid){var RadWindow = $find("<%=RadWindow1.ClientID%>");RadWindow.setUrl($get("Textbox1").value);RadWindow.show();}else{alert("The page is not valid. Please enter a valid URL.");}} </script><span>URL:</span> <asp:TextBox ID="Textbox1" runat="server" /> <asp:RegularExpressionValidator ID="regNavaigateUrl" runat="server" ForeColor="Red"ControlToValidate="Textbox1" ValidationGroup="UrlVG" SetFocusOnError="true" ValidationExpression="http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?"ErrorMessage="Valid URL should start with <strong>http://</strong>"> </asp:RegularExpressionValidator> <br /> <telerik:radbutton id="RadButton1" runat="server" text="Open Window" onclientclicked="OpenWindow"validationgroup="UrlVG" autopostback="false"> </telerik:radbutton> <telerik:radwindow id="RadWindow1" runat="server"> </telerik:radwindow>下面是如何從 eventArgs 參數獲取 get_commandArgument() 方法的另一個代碼示例:
<asp:ScriptManager runat="server" /> <script type="text/javascript">function btnEdit_Clicking(sender, eventArgs) {radconfirm("Are you sure?", confirmCallBackFn, 300, 150, null, eventArgs.get_commandArgument(), "myConfirmImage.png"); return false;args.set_cancel(true);}function confirmCallBackFn(arg) {radalert("Confirm returned the following result: " + arg);return false;} </script> <telerik:RadButton ID="RadButton2" AutoPostBack="false"runat="server" Text="Click Me"OnClientClicking="btnEdit_Clicking"CommandArgument="RadConfirm Title"> </telerik:RadButton> <telerik:RadWindowManager ID="RadWindowManager1" runat="server"></telerik:RadWindowManager>還可以使用以下代碼行附加到客戶端上 RadButton 的單擊客戶端事件:
button.add_clicked(function() { alert('You have attached to the clicked event of the button'); });OnClientMouseOver
當用戶將鼠標指針移到控件上時會觸發mouseOver事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonEventArgs,包含以下屬性和方法:
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值
OnClientMouseOut
當用戶將鼠標指針移到控件上時會觸發mouseOut事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonEventArgs,包含以下屬性和方法:
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值
OnClientToggleStateChanging
在更改 RadButton的SelectedToggleState和SelectedToggleStateIndex屬性之前觸發toggleStateChanging事件。僅當ToggleType屬性設置為 [Telerik.Web.UI] 時才會觸發該事件。ButtonToggleType.CustomToggle。用戶可以取消該事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonCheckedEventArgs,包含以下屬性和方法:
-
get_cancel() - 返回一個布爾值,指示事件是否被取消。True 表示事件被取消。
-
set_cancel(?shouldCancel?) - 設置一個布爾值,指示事件是否將被取消。設置為 true 意味著事件將被取消。
-
get_toggleType () - 返回 RadButton 的 ButtonToggleType。它可以是ButtonToggleType.CheckBox或ButtonToggleType.Radio。
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值。
此事件在用戶希望確保僅在滿足特定條件時才更改 ToggleState 的情況下很有用。請注意,如果按鈕自動回發到服務器,這是默認行為,即使事件被取消,回發也不會停止。
以下示例要求用戶確認更改三態 CheckBox 的狀態。代碼如下:
<script type="text/javascript">function ToggleStateChanging(sender, args){args.set_cancel(!window.confirm("Are you sure you want to change the state of the button?"));} </script><telerik:RadButton RenderMode="Lightweight" ID="RadButton1" runat="server" Text="Show/Hide Window"ToggleType="CustomToggle" ButtonType="ToggleButton"OnClientToggleStateChanging="ToggleStateChanging"><ToggleStates><telerik:RadButtonToggleState Text="UnChecked" PrimaryIconCssClass="rbToggleCheckbox" /><telerik:RadButtonToggleState Text="Filled" PrimaryIconCssClass="rbToggleCheckboxFilled" /><telerik:RadButtonToggleState Text="Checked" PrimaryIconCssClass="rbToggleCheckboxChecked" /></ToggleStates> </telerik:RadButton>OnClientToggleStateChanged
toggleStateChanged事件在 RadButton 的SelectedToggleState和SelectedToggleStateIndex屬性發生更改后觸發。僅當ToggleType屬性設置為 [Telerik.Web.UI] 時才會觸發該事件。ButtonToggleType.CustomToggle。用戶無法取消該事件。
事件處理程序接收兩個參數:
單擊的 RadButton 控件的實例
Telerik.Web.UI 類型的 eventArgs 參數。RadButtonCheckedEventArgs,包含以下屬性和方法:
-
get_currentToggleState() - 返回當前 [Telerik.Web.UI]。RadButtonToggleState對象應用于按鈕。
-
get_commandName() - 返回分配給 RadButton 的CommandName屬性的值
-
get_commandArgument() - 返回分配給 RadButton 的CommandArgument屬性的值
當用戶想要在按鈕更改其切換狀態時執行自定義客戶端代碼時,此事件很有用。例如,以下代碼顯示 RadWindow 控件中的一個頁面,當三態復選框為“已填充”時,另一個當狀態為“已選中”時,并且在未選中時隱藏窗口。
<script type="text/javascript">function OpenWindows(sender, args){var oWnd = $find("<%=RadWindow1.ClientID %>");switch (args.get_currentToggleState().get_text()){case "Telerik":oWnd.setUrl("https://www.telerik.com");oWnd.show();break;case "Google":oWnd.setUrl("http://www.google.com");oWnd.show();break;default:oWnd.hide();break;}} </script><telerik:radbutton id="RadButton1" runat="server" text="Show/Hide Window" toggletype="CustomToggle"autopostback="false" onclienttogglestatechanged="OpenWindows"><ToggleStates><telerik:RadButtonToggleState Text="Hide Windows" PrimaryIconCssClass="rbToggleCheckbox" /><telerik:RadButtonToggleState Text="Google" PrimaryIconCssClass="rbToggleCheckboxFilled" /><telerik:RadButtonToggleState Text="Telerik" PrimaryIconCssClass="rbToggleCheckboxChecked" /></ToggleStates> </telerik:radbutton> <telerik:radwindow id="RadWindow1" runat="server"></telerik:radwindow>RadButton 驗證和客戶端事件處理程序
當 ASP.NET 驗證與附加了客戶端事件處理程序的RadButton一起使用時,可能會發生意外行為。客戶端腳本將在驗證發生之前執行,這是一種預期行為,也可以通過標準 Button 控件觀察到。因此,如果依賴于頁面的回發并且驗證不成功,客戶端的腳本邏輯將無法正確執行。
為避免這種影響,應使用客戶端方法Page_ClientValidate。它強制客戶端進行驗證并返回一個布爾值,指示它是否成功。使用此值,可以在頁面未驗證的情況下停止客戶端功能的執行。以下示例顯示了如何實現此目的。
在下面的 ASPX 頁面標記上添加了一個TextBox,它使用RequiredFieldValidator進行驗證。該頁面是通過RadButton提交的,該按鈕在其OnClientClicking事件上執行回發確認:
<asp:TextBox ID="Textbox1" runat="server" /> <asp:RequiredFieldValidator ID="Requiredfieldvalidator1" ErrorMessage="Field is empty!"ControlToValidate="Textbox1" runat="server" ValidationGroup="Val" /> <br /> <telerik:RadButton RenderMode="Lightweight" ID="btnStandardConfirm" runat="server" Text="Standard window.confirm"OnClientClicking="StandardConfirm" ValidationGroup="Val"> </telerik:RadButton>下面是 JavaScript 函數,指定為OnClientClicking事件的處理程序。請注意,在執行主邏輯之前,使用Page_ClientValidate方法來驗證客戶端上的頁面。如果驗證成功,將顯示確認對話框:
function StandardConfirm(sender, args) {var validated = Page_ClientValidate('Val');if (!validated) return;args.set_cancel(!window.confirm("Are you sure you want to submit the page?"));}將 NavigateUrl 與 StandardButton 類型一起使用
RadButton控件有一個NavigateUrl屬性,當按鈕設置為ButtonType=LinkBut??ton時,該屬性用于指定要重定向到的 URL?。
有一種方法可以通過處理客戶端事件OnClientClicking將RadButton配置為StandardButton來實現此功能。在事件處理程序中,應該使用 JavaScript 打開在NavigateUrl屬性中指定的 URL。下面的代碼演示了如何實現這樣的功能:
<script type="text/javascript">function OnClientClicking(button, args) {window.location = button.get_navigateUrl();args.set_cancel(true);} </script><telerik:RadButton RenderMode="Lightweight" ID="RadButton" runat="server" Text="RadButton" NavigateUrl="https://www.telerik.com/" OnClientClicking="OnClientClicking"> </telerik:RadButton>總結
以上是生活随笔為你收集整理的telerik学习记录-RadButton(下)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WEB2.0中AJAX应用的详细探讨
- 下一篇: 青龙面板白屏一键修复