如何在jquery mobile中显示之前在页面中设置选择框的值?

时间:2014-12-11 07:36:33

标签: javascript jquery jquery-mobile

如何在jquery mobile中显示之前设置页面中选择框的值。我通常给出了

document.getElementById('RA_IF_inpVisible').value = visible;

在页面中,它给出如下

<div data-role="fieldcontain">
     <label for="name">Visibility:</label>
     <select name="RA_IF_inpVisible" id="RA_IF_inpVisible">
            <option value="0">0</option>
            <option value="1">1</option>
     </select>
</div>
</fieldset>

如果变量为“1”,则它仅显示“0”作为默认值。

2 个答案:

答案 0 :(得分:1)

您需要使用.val()设置值,然后刷新选择菜单以应用更改。

$(document).on("pagecontainerbeforeshow", function (e, data) {
  if ( data.toPage[0].id == "PageID" ) {
    $("#RA_IF_inpVisible", data.toPage).val(1).selectmenu("refresh");
  }
});
  

<强> Demo

答案 1 :(得分:-1)

如果我做对了,这应该对你有帮助:

var e = document.getElementById('RA_IF_inpVisible');
//Value is the Value of your Page, so you need to set it in some way ;)
var value = 1;
var i=0;
for (i;i<e.options.length; i++){
    if(e.options[i].value==value){
      e.options[i].selected = true;
    }
}
e.style.visibility = "visible";
<div data-role="fieldcontain">
     <label for="name">Visibility:</label>
     <select name="RA_IF_inpVisible" id="RA_IF_inpVisible">
            <option value="0">0</option>
            <option value="1">1</option>
     </select>
</div>

此Javascript应循环遍历所有元素,并将您应设置的值与选项的值进行比较。如果匹配,将选择选项。 之后您的选择将会显示。