HTML选择选项值未更新
HTML Select Option Value Not Updating
我有一个HTML表单,其中包含以下select元素:
<select class="form-control" onchange="$('form#filter').submit()" id="sort" name="sort">
<option value="0" selected="selected">A - Z</option>
<option value="1">Z - A</option>
</select>
问题是,当我选择不同的选项时,HTML不会更新并将我选择的选项设置为所选选项。
我完全不知道为什么它没有更新,我已经做了几个小时了。
这是绑定到表单上提交事件的函数,以备您需要:
$("form#filter").on("submit", function(evt)
{
var form = $(this);
var target = $("div#bands");
var url = form.attr("action") + "/" + form.find('option[selected]').val();
console.log(url);
$.get(url).done(function(data)
{
target.html(data);
});
evt.preventDefault();
});
更改
form.find("option[selected]").val()
至
form.find("option:selected").val()
或:
form.find("select").val()
或:
$("#sort").val()
选择器option[selected]
找不到当前选择的选项,而是在DOM中找到具有selected
属性的选项(这通常是HTML中具有selected
属性的选项,尽管可以使用Javascript进行更改)。
接受的答案不正确。这里有一个正确的解决方案(在撰写本文时在最新的JQuery和Bootstrap上进行了测试):
$("#mySelect").find("option:selected").val();
感谢Barmar的启发,尽管4条建议中只有1条有效,而且只是偶然。但我对此进行了调整,以注销当前所选选项的正确值属性。(使用下拉菜单时,初始选项的选定状态不会更新,请参阅Chris O'Kelly的评论。)
相关文章:
- 从选项页面更新chrome扩展清单权限
- 如何从Angular.JS中的子页面更新选项卡视图
- 更新选项卡开关/更改上的chrome扩展图标
- 在 ExtJS 中更新选项卡开关上的网格面板
- 在猫头鹰轮播 2 中初始化后更新选项
- 挖空.js从 AJAX 调用获取数据后更新选项文本
- jQuery 选择,以更新<选项>字段
- 所选选择框中更新选项的性能
- KnockoutJS:无法更新选项值
- 基于单选按钮选择的jQuery DatePicker更新选项
- 如何在ExtJs 5.0中通过ajax调用在更新选项卡后强制重新索引
- 选择2:选择新标记后更新选项
- 已选择jquery上的更新选项
- 占位符不会更新选项值
- 当最小化页面上出现新内容时,如何更新选项卡的标题?
- jQuery选择(chzn)更新选项
- 如何更新选项卡上的通知徽标
- 在Jquery插件wpaginate中使用ajax更新选项总页面
- 避免在更新选项调用中清理画布
- 引导输入提前更新选项