20151216JqueryUI學習筆記---按鈕

破玉發表於2015-12-16

按鈕(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();

  

相關文章