创建 msDropdown 插件后是否可以禁用某个选项?
我更好地解释了我的问题。 我想将 html 放入带有图标、文本和其他一些内容的每个选项中,因此首先我创建一个空选择,然后使用 add 函数添加每个选项:
dropdown.add({text:$price.html(), value:'normal', className:'normal'});
问题是,如果发生某种情况,我必须禁用一个选项,但无法使用插件设置来设置选项禁用。
只有在调用 msDropdown 之前将相关参数 disabled=disabled
设置到 select 中,才能禁用某个选项函数,但我无法使用此解决方案,因为我必须将动态 html 放入选项文本中。
还有其他方法吗?
感谢您的帮助。
最佳答案
我找到了解决方案。
我将选择创建为空,并像以前一样使用添加函数填充每个选项,但是当这种情况发生时,只需执行以下操作:
var dropdown = $('select[name="priceType"]').msDropdown().data("dd");
if(credits_error) { // option must be disabled
dropdown.destroy(); // Make it a simple select
$('select[name="priceType"] option').attr('disabled', 'disabled');
dropdown = $('select[name="priceType"]').msDropdown().data("dd");
}
这样,我首先通过调用 destroy 函数使其成为一个简单的选择,然后正确设置禁用属性并创建一个新的 msDropdown 选择强>.
它对我有用,我在 IE、FF 和 Chrome 上测试过
关于javascript - 如何使用 msdropdown 插件禁用选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14899447/