通过 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));
我们有一个 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));