如何使新选择的html选项成为页面加载的第一选择
How to make newly selected html option the first choice on page load?
作为javascript的新手,这似乎是一个完全可以解决/简单的问题,但我正在努力寻找解决方案。
如何让用户从下拉列表中选择一个选项,然后"保存"他们的选项(他们所在的页面已被重定向),然后返回到该下拉列表,并将他们选择的选项作为首选项?
截至目前,该列表按字母顺序排序,首先选择"默认"选项,其余选项按字母顺序排列。然后,如果用户选择了另一个选项,则会对列表进行排序,使其成为首选项,其余按字母顺序排列。刷新页面时如何保持该顺序?
js
// Below function: This sorts the html dropdown list so that the top option is the selected option.
document.addEventListener("DOMContentLoaded", function(event) {
$(document).ready(function(){
$(document).on('change', '#dropdown', function(){
$(this).html($('option', this).sort(function(a,b){
if(a.text == b.text) {
return 0;
}
if(a.text > b.text) {
return 1;
} else {
return -1;
}
}));
var nSel = $('option:selected', this).detach();
$(this).prepend(nSel);
// $('select').prepend(nSel);
$("select").val(nSel);
myDropdown.value = myTextBox.value;
});
});
})
html/titch
<div class = "dropdowns">
<select id = "dropdown">
<option> name </option>
{% for key, value in Infos|sort %}
<option value="{{ key }} | {{ value }}"> {{ key }} | {{ value }} </option>
{% endfor %}
</select>
</div>
如果只有客户端JavaScript,则必须使用cookie。
请参见此处:http://www.w3schools.com/js/js_cookies.asp
总之:您必须设置cookie字符串。
document.cookie = "selectedOption=" + option;
然后手动拆分字符串并解析键/值。
相关文章:
- 如何根据对具有多行的先前列表的选择来动态加载下拉列表
- 如何使新选择的html选项成为页面加载的第一选择
- 单击时选择2(未选中),显示加载微调器javascript
- 根据页面加载时的单选按钮选择显示某些字段
- 记住<选择>重新加载页面
- 如何在页面加载angular js上设置从ajax调用中选择的选项
- 如何在页面加载后禁用下拉列表框项目的选择
- Jquery - 根据下拉菜单选择加载 XML 文件
- 选择“加载 XMLHTTP 不会随表单一起发送”
- 从服务器中选择加载选项
- 根据下拉选择加载新页面
- 异步淘汰observableArray选择加载选项
- 在选择框中选择加载选项时
- 选择加载以前的数据- AngularJS
- 选择加载具有现有值的页面
- Ajax下拉选择加载数据
- 多个引导选择加载非常慢
- 触发器以编程方式选择加载方法
- 保留“;高度“;Ajax调用后jQuery中的声明(下拉选择加载产品数据,重置其他页面元素的高度)
- Mvc5基于searchTerm通过ajax选择加载结果