我为下拉菜单应用了替换,并且jQuery替换保持为空,因为select-option-form的预选值未定义(值是动态生成的)。当我点击替换并选择一个选项时,它可以正常工作。以下是替换代码的摘录,我认为它是导致错误的原因:
function createDropDownSF(){
var searchForm_type = $("#searchForm_type");
var selected = searchForm_type.find("option[selected]");
var options = $("option", searchForm_type);
因此我尝试使用此代码扩展函数,以使函数在没有选定值时使用第一个选项,但它不起作用:
if (selected.is("undefined")) {
searchForm_type.find("option")[0];
}
有没有人有想法?
答案 0 :(得分:0)
我首先尝试从所选的选项中获取一个列表并检查长度是否> 0
$("select option:selected").length > 0
然后你可以使用JQuery来选择第一个选项。
$('select option').first().attr('selected', true);
答案 1 :(得分:0)
你的意思是这样吗?
function createDropDownSF(){
var searchForm_type = $("#searchForm_type");
var selected = searchForm_type.find("option[selected]");
$("select option:selected").length > 0;
$('select option').first().attr('selected', true);
var options = $("option", searchForm_type);
答案 2 :(得分:0)
<select id="test">
<option>1</option>
<option>2</option>
<option selected="selected">3</option>
<option>4</option>
$(function () {
if ($("#test option:selected").length > 0) {
// something is selected
alert("selected");
} else {
// nothing is selected
$('#test option').first().attr('selected', true);
}
});
我不知道如何设置没有选择值的选择,但此代码应该有效。