通过 jQuery 在 select 菜单中添加禁用的 selected 选项

Add disabled selected option in select menu via jQuery

我们有一个 select 菜单,它是通过数据属性和一个 knockout.js 数组填充的。我对 jQuery 也不太熟悉,记住这一点。

我如何通过 jQuery 添加一个选项,这是第一个 selected 选项,它也被禁用了。基本上,它被用作占位符。我知道如何通过 HTML 来做到这一点,但不是通过这种方式。这是正在使用的 HTML:

<select id="delemilter" data-bind="options: delimiterList, value: delimiterSelectedValue, optionsValue: 'value', optionsText: 'name', enable: true"></select>

在其他 select 菜单中,我们的一位开发人员使用了 jQuery 的这一行。似乎是一些淘汰赛 API 的东西。看起来像一个可观察数组:

self.selectMenuID.push({ value: 'Placeholder Text', key: 0, data: 0, disabled: true });

无法弄清楚如何再次重用它...希望这些信息足够了。

谢谢!

您可以按如下方式进行:

$('#delemilter').prepend('<option disabled="disabled">My disabled Option</option>');

记得根据需要在我们的选项 html 中指定其他属性。

这是给你的 JSFiddle:http://jsfiddle.net/loanburger/ask9L71h/

我发现这种方式更加优雅和可读:

$("select").append($("<option>", {
    value: "foo",
    text: "bar"
}).prop("disabled", true));