Jquerymobile-使用javascript创建选择菜单

Jquerymobile - creating select menu using javascript

本文关键字:选择 菜单 创建 javascript 使用 Jquerymobile-      更新时间:2023-09-26

我正在尝试使用jquerymobile和cordova 2.0.0创建一个android应用程序。我计划添加localStorage,它将把应用程序的设置保存到android存储。现在我正试图强制jquerymobile的选择菜单显示当前保存的值。

示例:假设您有一个由3个项目(禁用、启用、兼容模式)组成的菜单(设置),并且您选择了兼容模式并保存设置。然后存储变量设置并将其设置为兼容性。但当您下次加载设置时,它看起来像是菜单(设置)被设置为禁用,因为它是列表中的第一个选项。所以我希望我的程序在设置中显示当前选择和保存的选项。我已经尝试过使用body onload调用load()函数,该函数将从存储值中设置selectedIndex,但它没有起作用(可能是我的错误代码)。

因此,我需要我的javascript来构建选择菜单并更改选项的顺序,但它不起作用。

这是我的HTML代码:

<div data-role="content" data-theme="c" id="content">
        <div data-role="fieldcontain" onLoad="load();">
            <label for="transitions" class="select">Prechody:</label>
                <select name="transitions" id="transitions">
                </select>
        </div>      
        <div data-role="fieldcontain">
            <label for="entriesNumber">Počet zobrazovaných príspevkov:</label>
            <input type="range" name="entriesNumber" id="entriesNumber" value="25" min="0" max="35"  />
        </div>
</div>

这是javascript:

function load(){
var select = document.getElementById("transitions");
var option1 = document.createElement("option");
option1.setAttribute("value","vypnute");
option1.innerHTML("Vypnúť");
select.appendChild(option1);
var option2 = document.createElement("option");
option2.setAttribute("value","zapnute");
option2.innerHTML("Zapnúť");
select.appendChild(option2);
var option3 = document.createElement("option");
option3.setAttribute("value","kompatibilita");
option3.innerHTML("Zapnúť v režime kompatibility");
select.appendChild(option3);
}

如果您知道如何使用selectedIndex(http://www.w3schools.com/jsref/prop_select_selectedindex.asp)或者通过任何其他更明确的方式,请将其张贴在这里。如果没有,请尝试检查我的JS代码,这样它就可以工作了。

我想明白了。只需要使用这个代码:

document.getElementById("selection").selectedIndex = 2/*selected value*/; 
$("#selection").selectmenu('refresh');

此外,如果您使用的是jquerymobile滑块(范围),则可以使用此代码更新其值:

$('#slider').val(updatedValue).slider('refresh');