使用JSP和JSTL的HTML/JavaScript-select下拉菜单只显示iphone上的第一个选项,而不是所选选



我的html:中有一个<select>元素

<select id="mySelect">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>

我使用JSP/JSTL作为后端,当页面加载时,我希望根据从后端获得的页面属性动态选择其中一个选项。换句话说,在JavaScript/jQuery:中

$(document).ready(function() {
$("#mySelect").find("option[val=${Var}]").prop("selected", true);
});

理想情况下当页面加载时,<select>元素应显示屏幕上选择的选项(例如,如果${Var}为4,则默认情况下应显示4,并允许用户使用下拉菜单选择任何其他选项。这在我的浏览器和安卓设备上都很好,但在我的iPhone 5S上测试时,<select>会显示第一个选项,而不是页面加载时选择的选项(值为${Var}的选项(。

关于如何确保它显示正确的选定值,有什么提示吗?

你可以这样做,当你的页面加载时,它会执行这个javascript:

var test = '<%= request.getAttribute("var") %>';

这里的var"test"将包含您在servlet中设置的名为"var"的属性。

然后为了更简单,我在这个例子中使用jquery,你可以将下拉列表值设置为var(但你必须确保下拉列表选择有一个带有变量var的值(。如果var==4,那么它将在加载时将下拉列表选择设置为值4。

$("#mySelect").val(test);

最新更新