我知道链式下拉列表有很多解决方案,但我正在尝试创建一些与平常略有不同的解决方案。
用户点击前的菜单:
<select>
<option>Choose Something</option>
</select>
用户点击后的菜单:
<select>
<option>Loading options</option>
</select>
从服务器加载选项后的菜单:
<select>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
问题是菜单填充后,它的尺寸变小,其他项目直到第二次点击才出现。
有解决办法吗?
最佳答案
这里有一些解决方法。可能对你有帮助。
HTML(空选项
作为占位符)
<select>
<option>Select Something</option>
<option> </option>
<option> </option>
<option> </option>
</select>
JavaScript
var clickCount = 0;
$("select").click(function(e) {
if (clickCount == 0) $("select").empty().html("<option>Loading options</option>");
clickCount++;
if (clickCount == 1) {
$("select").click();
return;
}
if (clickCount == 2) {
$("select").empty().html("<option>Select Something</option><option>1</option> <option>2</option> <option>3</option><option>4</option> ");
$("select :nth-child(1)").attr("selected", "selected");
}
});
Demo 1或 Demo 2在 jsfiddle.net 上。
希望这对你有用。
关于jquery - 如何用 jquery onclick 填充当前下拉列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9357938/