如何通过按钮更改选择表单
How to change a select form by buttons
>我有一个选择表单:
<select>
<option value ="one">Label 1</option>
<option value ="two">Label 2</option>
<option value ="three">Label 3</option>
</select>
但我也有一些按钮可以调用与选择表单相同的函数
<button class="one">Label 1</button>
<button class="two">Label 2</button>
<button class="three">Label 3</button>
因此,如果我选择这些按钮之一,我该如何更改选择表单中显示的选项(我的意思是打开表单之前表单中的文本)?
因此,如果您$("button.three").click();
"标签3"将显示在选择表单中
我不确定更改<select>
标签的功能是什么。我试过这些,但它们不起作用:
$("select").select().val("three");
$("select").find([value="three"]).select();
$("select").selectedIndex = 1;
$("button").on("click", function() {
var selectedClass = $(this).attr("class");
$("option[value="+ selectedClass + "]").attr("selected", true);
});
尝试$("select").val("three");
http://api.jquery.com/val/#val-value
这似乎是最简单的解决方案:
$("button").click(function () {
$('select').val($(this).attr('class'))
});
js小提琴示例
显然,当我写回复时,其他人打败了我的答案,但是嗯......这是一个非jQuery解决方案。;)
var buttons = document.getElementsByTagName('button');
var mySelect = document.getElementById('mySelect');
var mySelectOptions = mySelect.getElementsByTagName('option');
for (var i = 0, length = buttons.length; i < length; i++) {
var button = buttons[i];
button.onclick = function(event) {
var text = event.target.innerText;
for (var x = 0, length = mySelectOptions.length; x < length; x++) {
var option = mySelectOptions[x];
if (option.innerText === text) {
mySelect.selectedIndex = x;
return;
}
}
}
}
http://jsfiddle.net/bvaughn/x1chabLa/
相关文章:
- 在带有 bootbox 的自定义对话框中添加选项以选择表单控件.js在 ASP.NET MVC 中
- 如何通过按钮更改选择表单
- 在提交数据之前更改选择表单元素中的值
- 试图让Jquery在Rails和ActiveAdmin中使用动态选择表单
- HTML使用选择表单更改输入选择(可能使用JQuery?)
- Mootools提交表单仅在通过ID选择表单时有效
- 如何发布单选和复选框选择?表单由php和js处理
- 订阅选择表单中的不同选项
- 带有选择表单和文本字段的简单计算器
- text()不适用于选择表单输入
- 按下按键输入时输入表单和选择表单之间的冲突
- 选择表单后从数据库中获取隐藏的输入值
- 如何在给定焦点时选择表单输入中的文本
- 触发链接以在 If 语句中选择表单时触发
- 使用 Javascript 函数从 HTML 选择表单生成价格
- 使用 JavaScript 清空选择表单元素
- Ajax 动态选择表单未提交值
- JavaScript 选择表单选项
- 创建元素时不要更改选择表单的选项
- 如何做一个HTML选择表单,其中所选选项更新JSON值