あなたのpageinitイベントに問題はありません。間違っているのは<a>タグにあります。
発生しているエラーを取り除くには、コードに 2 つの変更を加える必要があります。
- そうじゃない
disabled、そのdisable
- メソッドを呼び出す前に、
disableメソッドを呼び出す必要がありますbutton()。したがって、button要素を初期化したことになります。
コードは次のようになります。
$('#ageNext').button().button('disable');
しかし、これを行うと、次のようなエラーが発生します。
キャッチされていない TypeError: 未定義のメソッド 'addClass' を呼び出せません
disable犯人はメソッドを呼び出すコードにあります
disable: function() {
this.element.attr( "disabled", true );
this.button.addClass( "ui-disabled" ).attr( "aria-disabled", true );
//^^ Uncaught TypeError: Cannot call method 'addClass' of undefined
return this._setOption( "disabled", true );
}
あそこが見えthis.buttonますか?これはundefined、要素が実際のボタンでない場合になります。
そうは言っても、私は要素のタイプとタイプdisable のみに取り組む必要があります。何らかの理由で、これは偽装ボタンで期待どおりに機能しません。次のように、クラスを要素に手動で追加することで、これを機能させることができます。input[type=button]<button/><a/>ui-disabled
$(document).on('pageinit', '#age', function (e) {
$('#ageNext').addClass('ui-disabled');
});
デモ: http://jsfiddle.net/hungerpain/gzAHT/