jQueryMobileでセレクトボックスの要素を選択状態にしたり、ラジオボタンにチェックをつけたりといった操作をJavaScriptから行っても、画面表示に変化がないという事象になったので調べた。

結論

$('select').selectmenu('refresh',true);
$('input').checkboxradio('refresh',true);

みたいなことをやらないと表示が再描画されない。
  • これは、jQueryMobile内部で関連するlabelやiconも含めていろいろ操作して再描画するために必要な手続き。
  • 第2引数はコンポーネントのリビルド指定。
    trueにしないほうがはやくていいのかも。

参考 : jQueryMobileを使ったチェックボックスの値をJavaScriptで操作するときの覚え書き – Output::Weblog