原因はよくわかりません。しかし、これは私があなたがしていることを書き直す方法です(これは問題を解決するように見えます):
onclick="toggleChecked('2', 'TR02')"
まず、 HTMLからインラインJavaScript()を削除します。
toggleChecked()
次に、関数を次のjavascriptに置き換えます。
$(document).ready(function(){
$('a[id^="star"]').on("click", function(){
if ($(this).data("theme") == "d") {
$(this).buttonMarkup({ theme: 'e' }).button();
} else {
$(this).buttonMarkup({ theme: 'd' }).button();
}
});
});
id
上記はイベントリスナーであり、で始まるアンカーstar
がクリックされたことを確認します。
ボタンの更新は少しバグがあるように見えます。ボタンを再構築しても、前のテーマのクラスがハングアップすることがよくあります。
アップデート
実際に上記を破棄すると、選択したボタンを実現するためのこのような複雑な方法のように見えます。上記をガイドとして使用してCSSを変更し、インラインスタイルを削除して、次のjQueryを使用してみませんか。
$(document).ready(function(){
$('a[id^="star"]').on("click",function(){
$(this).toggleClass("ui-btn-pressed");
});
});
これがjsbinです:http://jsbin.com/ifodij/8/edit