我正在使用jQuery ui selectmenu()。
我已经完成了https://jqueryui.com/selectmenu/
我有2个选择框。我想在第二个中使用第一个选择框值。那么我怎样才能获得1st selectbox的价值。
暂时我这样做。
<select class="select" id="one">
<option value="1">A</option>
<option value="2">B</option>
</select>
<select class="select2">
<option value="1">A</option>
<option value="2">B</option>
</select>
$(".select").selectmenu();
$(".select2").selectmenu({
change: function (event, data) {
var firstVal = $("#one-button .ui-selectmenu-text").text();
alert(firstVal);
return false;
}
});
有没有更好的方法来获得第一个选择框的价值?
它生成以下HTML格式
<span class="ui-selectmenu-button ui-widget ui-state-default ui-corner-all" tabindex="0" id="one-button" role="combobox" aria-expanded="false" aria-autocomplete="list" aria-owns="continents_1-menu" aria-haspopup="true" style="width: 0px;" aria-activedescendant="ui-id-29" aria-labelledby="ui-id-29" aria-disabled="false">
<span class="ui-icon ui-icon-triangle-1-s"></span>
<span class="ui-selectmenu-text">1</span>
</span>
答案 0 :(得分:2)
答案 1 :(得分:1)
由于UI selectmenu基本上只是一个围绕普通选择框的HTML包装器,它反映了它的值和标签,你仍然可以正常读取值和标签。在你的情况下:
var firstVal = $("#one").find(':selected').text();
答案 2 :(得分:0)
下面的代码示例将从第一个选择框中获取值,并将其设置为第二个选择框中的值
$(document).ready(function(){
$(".select").change(function() {
//this will give you value of first select box
var selectedval = ($(".select option:selected").val());
//this will set the value from first select box in second select box
$(".select2").val(selectedval);
});
});