0

jQuery Mobile (v1.1.1) を使用してスマートフォン アプリを作成していますが、アプリを制御するフォームをクリアする「リセット」ボタンが必要です。例えば

<label for="list1">Select an option</label>
<select id="list1" name="list1" data-native-menu="false" multiple>
<option value="1">option 1</option>
<option value="2">option 2</option>
<option value="3">option 3</option>
<option value="4">option 4</option>
</select>

上記のマークアップを

<form method="" action=""> ... </form> 

(これはおそらく JQM が期待するものです) サーバーにデータを送信するのではなく、クライアント上ですべての処理を行いたいからです。通常の jQuery を使用して選択したオプションを読み取ることができます。

var vals = [];
$('select option:checked').each(function() {vals.push($(this).attr('value'));});

しかし、「リセット」ボタンをクリックすると、上記のすべてのオプションをリセット/クリアする方法がわかりません。私はもう試した:

$('select option').attr('checked', 'unchecked');

しかし、これはうまくいきません。JQMがどのオプションが選択されているかを保存する方法と、これらのオプションをリセットする方法を知っている人はいますか?

ありがとう、スチュ

4

1 に答える 1

0

私はそれを使用します:

$('.ui-select a').find('.ui-btn-text').text('placeholder text')

$('.ui-selectmenu ul li[aria-selected="true"]')
    .attr('aria-selected', 'false')
    .removeClass('ui-btn-active');

多分それは役立つでしょう。

編集:

私は他の解決策も見つけました:

    $('select option').removeAttr('selected');
    $('select').selectmenu('refresh', true);
于 2012-08-08T12:07:50.947 に答える