0

我正在尝试设置下拉菜单的默认值,但我没有这样做。请告诉我这段代码有什么问题。

<span>Section Name:</span><select id="editSection" name="classSection" >
<option >A</option><option >B</option><option >C</option><option >D</option>
</select><br>

这是我的javascript代码:

$('input[id=editSection]').val($.trim(sec));

我试图将 sec 设置为下拉菜单的默认值。sec 是一个在操作数之后得到的变量,其值为 A、B、C、D。

4

5 回答 5

1

尝试只使用 id。Aselectinput不考虑同一类型的元素。

小提琴演示

$('#editSection').val($.trim(sec));
于 2013-08-01T11:58:57.157 回答
0
 $("#editSection").empty().append("<option value='0'>--Select--</option>").append($.trim(sec));
于 2013-08-01T11:54:56.613 回答
0

试试下面的javascript代码

var theText="B";

$("#editSection option").each(function() {
  if($(this).text() == theText) {
    $(this).attr('selected', 'selected');            
  }                        
});

选项文本与Text变量相同,选项将被选中。

于 2013-08-01T11:55:42.313 回答
0

我找到了一个很好的解释Set the default value in dropdownlist using jQuery。它建议使用:

//for example let your sec variable be "C".
var sec = "C";
// it does the trick, and set default to sec's value.
$("select option:contains("+ $.trim( sec ) + ")").prop('selected',true);
于 2013-08-01T12:03:52.167 回答
0
<span>Section Name:</span>

<select id="editSection" name="classSection" >
    <option >A</option>
    <option >B</option>
    <option >C</option>
    <option >D</option>
</select><br>


var sec = "C";
$('#editSection option').each(function() {
    if ($(this).text() == sec){
        alert($(this).val());
        $(this).attr('selected', 'selected');
    }
});
于 2013-08-01T13:48:05.540 回答