jQuery Mobile - 更改单选按钮事件的视图

时间:2013-10-18 00:40:09

标签: javascript jquery jquery-mobile

我正在尝试使用JQM单选按钮在两个视图之间切换(所有vs过滤列表)。我正在尝试将脚本附加到将切换视图的changed事件。加载新页面时,我希望突出显示相应的单选按钮以反映当前视图。

在下面的例子中,我看似看似不稳定的行为(虽然它当然是确定性的;我只是不理解这种行为)。我有两个相同的页面,除了两个方面:

  • 在这两页中,设置了checked元素的单选按钮是 不同。
  • 在这两页中,正文内容(收音机下方) 按钮)不同。

加载以下页面时,All Trips会被正确突出显示。如果单击My Trips按钮,页面将更改:另一个单选按钮会突出显示,并且正文会发生变化。但是,当我单击第二页上的All Trips按钮时,正文发生变化,单选按钮会短暂更改,但随后会返回My Trips状态。

如果我从第二页开始,则会发生类似的行为。

<div data-role="page" data-cache="never" id="mainpage">
    <div data-role="content">
        <fieldset data-role="controlgroup" data-type="horizontal" class="trippick">
            <input type="radio" name="radio-choice" id="radio-choice-all-trips" value="all" checked="checked" />
            <label for="radio-choice-all-trips">All Trips</label>
            <input type="radio" name="radio-choice" id="radio-choice-my-trips" value="mine" />
            <label for="radio-choice-my-trips">My Trips</label>
        </fieldset>

        <script type="text/javascript">
        $(":radio[name='radio-choice']").change(function () {
                    var selection=$(this).val();
                    if (selection == "mine") {
                        $.mobile.changePage("opt2.html");
                    } else {
                        $.mobile.changePage("opt1.html");
                    }
                });
        </script>

        <p>[All trips shown here.]</p>
    </div>
</div>

0 个答案:

没有答案