我正在尝试以编程方式将选择列表选项值设置为已选中。
<script>
if(typeof localStorage.me !== "undefined") {
console.log("test");
$("#business").val(localStorage.me);
}
if(typeof localStorage.partner !== "undefined") {
$("#partner-business").val(localStorage.partner);
}
$("#page-main").on("change", "#business", function(event) {
localStorage.setItem("me", $("#business").val());
});
$("#page-main").on("change", "#partner-business", function(event) {
localStorage.setItem("partner", $("#partner-business").val());
});
</script>
<div class="content" data-role="content">
<div data-role="fieldcontain">
<h3 class="select center-h3">I am a:</h3>
<select name="business" id="business">
<option value="technical">Technical</option>
<option value="sales">Sales</option>
</select>
</div>
<div data-role="fieldcontain">
<h3 class="select center-h3">My partner is a:</h3>
<select name="partner-business" id="partner-business">
<option value="technical">Technical</option>
<option value="sales">Sales</option>
</select>
</div>
</div>
我正在尝试根据选项值设置它,但这似乎不起作用。
如何通过选项值而不是选项标签内的名称来设置它?
答案 0 :(得分:1)
您需要在document-ready处理程序中包装代码。除此之外你编码工作。
指定在DOM完全加载时要执行的函数。
$(document).ready(function () {
//Your code
});
答案 1 :(得分:0)
以下是使用$(this)
而不是查询dom来执行相同操作的简化方法,以供将来参考。
if(localStorage.me) $("#business").val(localStorage.me);
if(localStorage.partner) $("#partner-business").val(localStorage.partner);
$("#business").on("input", function() {
localStorage.me = $(this).val();
});
$("#partner-business").on("input", function() {
localStorage.partner = $(this).val();
});