1

「無効」オプションを使用してjQueryUIボタンを無効にすると、ボタンが暗くなります。しかし、私はそれをそのように望んでいません-私はそれが応答せず、元のレイアウトでスタイル設定されていることを望んでいます-ロールオーバーやクリックはありません-すべてが死んでいます。

ボタンからのボタンクリックのバインドを解除しても効果はありません。同様にunbind()を使用して、ボタンからすべてのイベントのバインドを解除します。

何か案は?

4

2 に答える 2

3

実際、ボタンを無効にした後、「無効」クラスを削除することができます。

$( "button" ).button();

$( "button" ).button('disable');

$( "button" ).removeClass('ui-button-disabled ui-state-disabled')

ここにフィドルがあります:http://jsfiddle.net/9gq9n/

于 2012-10-24T11:10:20.703 に答える
1

さて、ついに私はそれを理解しました。ラベルが添付された「buttonized」チェックボックスを含むjQueryUIボタンを無効にするには(元のレイアウトを保持したまま)、次の手順を実行する必要があります。

  • イベントのバインドを解除する
  • ラベルからイベントのバインドを解除します

だから、ここに例があります:

$("mybuttons").unbind();
$("mybuttons").getLabels().unbind();

最近書いたプラグインを使用しています(元々はSOメンバーのGijsによるものですが、常に機能するとは限りませんでした...)

jQuery.fn.getLabels = function () {
    return this.map(function () {
        var parentLabels = $(this).parents('label').get();
        var associatedLabels = this.id ? associatedLabels = $("label[for='" + this.id + "']").get() : [];
        return parentLabels.concat(associatedLabels);
    });
};

それが役に立てば幸い。

于 2012-10-25T07:35:13.723 に答える