Я пытаюсь изменить стиль вертикальной группы переключателей, и появляется новая тема, которую я добавляю к одной из них, но тема, которую я удаляю из другой / остальная часть не исчезает.
Моя цель состоит в том, чтобы изменить тему выбранного переключателя (в любом случае связанные элементы управления), чтобы он выделился больше при выборе.
<div data-role="content">
...
<fieldset data-role="controlgroup" id="showChooser">
<legend><h3>Which show are you attending?</h3></legend>
<input type="radio" name="activeShow" id="activeShow1" value="1" />
<label for="activeShow1">
<h2>Choice 1</h2>
<p>03/25/2012 - 03/27/2012</p>
</label>
<input type="radio" name="activeShow" id="activeShow2" value="2" />
<label for="activeShow2">
<h2>Choice 2</h2>
<p>03/25/2012 - 03/27/2012</p>
</label>
<input type="radio" name="activeShow" id="activeShow3" value="3" />
<label for="activeShow3">
<h2>Choice 3</h2>
<p>03/25/2012 - 03/27/2012</p>
</label>
...
</fieldset>
...
</div>
В результате отображается следующий список:
базовое состояние http://img.skitch.com/20120319-8wfa4ep6txwdtgjy475k6b5c3k.png
Итак, при нажатии одного из них я запускаю следующий код:
$('#showChooser input:radio').click(function(e) {
$("#showChooser label").attr('data-theme','c');
$(this).next().attr('data-theme','e');
$("#settings").page();
});
Первая строка, теоретически, должна их сброситьвсе до базового состояния темы 'C', а затем во второй строке будет выделен выбранный элемент.Я могу пройти и увидеть, что эти HTML-изменения сделаны, поэтому очевидно, что в следующий раз jQuery Mobile должен будет выполнить повторный анализ и обновить отображение.
Обратите внимание на отчаянную попытку обновить всю страницус .page()
в конце - даже если это не приведет к желаемому эффекту.
При первом щелчке один из них дает желаемый эффект:
![state 2](https://img.skitch.com/20120319-xruayf7t3873ibrh1mcuu8swau.png)
Но последующие щелчки, кажется, не отменяют выделение ранее выбранных строк:
![state 3](https://img.skitch.com/20120319-a1s14jeetn5skrwsfhcfcnyj6.png)
Я также пробовал $("#showChooser").listview("refresh")
и некоторые другие подобные вещи, которые яне могу вспомнить, но ни один не имеет желаемого эффекта.Так что я пропускаю / делаю неправильно?