按鈕(button) , 可以給生硬的原生按鈕或者文字提供更多豐富多彩的外觀。 它不單單
可以設定按鈕或文字,還可以設定單選按鈕和多選按鈕。
一. 使用 button 按鈕
使用 button 按鈕 UI 的時候,不一定必須是 input 按鈕形式,普通的文字也可以設定
button 按鈕。
$('#search_button').button();
二. 修改 button 樣式
在彈出的 button 對話方塊中,在火狐瀏覽器中開啟 Firebug 或者右擊->檢視元素。這樣,
我們可以看看 button 的樣式,根據樣式進行修改。我們為了和網站主題符合,對 dialog 的標題背景進行修改。
//無須修改 ui 裡的 CSS,直接用 style.css 替代掉
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { background:url(../img/ui_header_bg.png); } .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { background:url(../img/ui_white.png); }
注意:其他修改方案類似。
三. button()方法的屬性
按鈕方法有兩種形式: 1.button(options), options 是以物件鍵值對的形式傳參,每個鍵
值對錶示一個選項; 2.button('action', param), action 是操作對話方塊方法的字串, param 則
是 options 的某個選項。
$('#search_button').button({ disabled : false, icons : { primary : 'ui-icon-search', }, label : '查詢', text : false, });
注意:對於 button 的事件方法,只有一個: create,當建立 button 時呼叫。
四. button('action', param)
button('action', param)方法能設定和獲取按鈕。 action 表示指定操作的方式。
//禁用按鈕 $('#search_button').button('disable'); //啟用按鈕 $('#search_button').button('enable'); //刪除按鈕 $('#search_button').button('destroy'); //更新按鈕,重新整理按鈕 $('#search_button').button('refresh'); //得到 button 的 jQuery 物件 $('#search_button').button('widget'); //得到 button 的 options 值 alert($('#search_button').button('option', 'label')); //設定 button 的 options 值 $('#search_button').button('option', 'label', '搜尋');
注意: 對於 UI 上自帶的按鈕, 比如 dialog 上的, 我們可以通過 Firebug 查詢得到 jQuery
物件。
$('#reg').parent().find('button').eq(1).button('disable');
五. 單選框、核取方塊
button 按鈕不但可以設定普通的按鈕,對於單選框、核取方塊同樣有效。
//HTML 單選框 <input type="radio" name="sex" value="male" id="male"> <label for="male">男</label> </input> <input type="radio" name="sex" value="female" id="female"> <label for="female">女</label> </input> //jQuery 單選框 $('#reg input[type=radio]').button(); //jQuery 單選框改 $('#reg').buttonset(); //HTML 部分做成一行即可 //HTML 核取方塊 <input type="checkbox" name="color" value="red" id="red"> <label for="red">紅</label> </input> <input type="checkbox" name="color" value="green" id="green"> <label for="green">綠</label> </input> <input type="checkbox" name="color" value="yellow" id="yellow"> <label for="yellow">黃</label></input> <input type="checkbox" name="color" value="orange" id="orange"> <label for="orange">橙</label> </input> //jQuery 核取方塊 $('#reg input[type=radio]').button(); //jQuery 核取方塊改 $('#reg').buttonset();