Javascript 如何使用jquery从select标记中选择选项值
对不起,伙计们,之前我没有提到我的下拉列表是用bootstrap制作的。根据@rps的建议,我问我的同事(他是制作模板的),他说这是用bootstrap制作的 我把基本的html下拉代码,所以我想你们可以理解如何引导代码将 html代码:Javascript 如何使用jquery从select标记中选择选项值,javascript,jquery,html,Javascript,Jquery,Html,对不起,伙计们,之前我没有提到我的下拉列表是用bootstrap制作的。根据@rps的建议,我问我的同事(他是制作模板的),他说这是用bootstrap制作的 我把基本的html下拉代码,所以我想你们可以理解如何引导代码将 html代码: <select name="primary" class="select-block" id="select_alert"> <option "selected">Choose Alert T</option>
<select name="primary" class="select-block" id="select_alert">
<option "selected">Choose Alert T</option>
<option value="T1">T1</option>
<option value="T2">T2</option>
<option value="T3">T3</option>
<option value="T4">T4</option>
</select>
现在使用javascript或jquery,我想以如下方式更改select选项
document.getElementById('select_alert').value="T1";
如果我再次检查选择菜单的值,它应该是“T1”
谢谢你使用jQuery,你可以这样做:
$('#select_alert').val('T1');
演示:使用方法如下:
$('#select_alert').val('T1'); // in jquery
另外,您的javascript代码是正确的,页面上一定有其他错误。您可以尝试此操作
//从下拉选择中获取值
$( "#select_alert option:selected").val();
$( "#select_alert option:selected" ).text();
我对这个问题的理解不明确,但如果您试图将值或所选选项设置为
T1
:
$('#select_alert option[value="T1"]').prop('selected',true);
如果您试图检索所选选项的值:
$('#select_alert option:selected').val();
没有jquery,您可以使用
document.getElementById('select_alert').selectedIndex = 1
如果您想通过给定的值找到选项索引,请尝试以下操作
var sel = document.getElementById('select_alert'),
selopt = sel.options,
searchidx;
//alert(selopt[sel.selectedIndex].value);
//sel.selectedIndex = 1;
//alert(selopt[sel.selectedIndex].value);
//alert(sel.value)
// search for the index
searchidx = getoptidx(selopt, "T3");
if (searchidx !== false) {
sel.selectedIndex = searchidx;
alert(selopt[sel.selectedIndex].value);
} else {
alert("index not found")
}
/**
* returns the index of a value
* @todo optimize search?
*/
function getoptidx(opts, searchterm) {
for (var i in opts) {
if (opts[i].text === searchterm) return i;
}
return false;
}
小提琴:试着这样做:
$('#select_alert').val("T3");
$("#select_alert").selectmenu();
$("#select_alert").selectmenu("refresh");
你的代码应该正常工作,肯定还有其他问题!您在哪里编写了
document.getElementById('select_alert')。value=“T1”
?如果您将整个代码粘贴到问题中,可能会有所帮助您是否正在尝试获取当前所选选项的值?或者将“选择菜单”更改为特定选项?@CoreyRothwell我正在尝试将“选择菜单”更改为特定选项。@我更新了所有问题,希望您现在能够理解我的尝试。@user2873816请看一看,您的JavaScript代码是正确的,只需确保脚本代码放在文档中执行它的某个位置,而不是被覆盖。运行第一个语句代码后,我希望在菜单顶部看到“T1”。我不知道索引,我将从某个位置获取选项值,我只想在菜单顶部显示该值,就像我在问题中显示的那样。现在fiddle有点挣扎了,我将代码粘贴到了答案中,也许这个会有帮助
$('#select_alert').val("T3");
$("#select_alert").selectmenu();
$("#select_alert").selectmenu("refresh");