【发布时间】:2015-10-17 16:46:45
【问题描述】:
我有一个带有几个选项的下拉菜单。我想遍历它们并在其中一些属性上支持 disabled 属性,其结果来自 Ajax 调用。
这就是我想要达到的目标。
可报告数据示例
s-00591 | true
s-00592 | false
s-00593 | false
s-00594 | false
s-00595 | false
HTML
<select class="rn-dropdown" id="rn-dd">
<option value="class-view">class view</option>
<!-- Students Populate Here -->
<option value="s-00591">Student S00591</option>
<option value="s-00592">Student S00592</option>
<option value="s-00593">Student S00593</option>
<option value="s-00594">Student S00594</option>
<option value="s-00595">Student S00595</option>
</select>
JS
success: function(reportable) {
$.each(reportable , function(i, v) {
var userId = v.userId;
var reportable = v.reportable;
var currentVal = userId;
console.log('start');
console.log(userId + " | " +reportable);
$('#rn-dd option[value="' + currentVal + '"]').prop('disabled', true);
console.log('end');
});
}
结果,
显示控制台没有错误。 但我一直看到我的下拉菜单没有像我希望的那样被禁用。
任何提示/帮助/建议对我来说意义重大。
【问题讨论】:
-
试试
.prop('disabled', 'disabled')参考stackoverflow.com/questions/6961526/… -
我的想法和@ChaitanyaGadkari 一样。
-
简单检查
console.log($('#rn-dd option[value="' + currentVal + '"]').length),看看选择器是否匹配 -
布尔值与
prop('disabled', boolean)配合得很好,但它必须是数据中的布尔值 -
提供真实的示例数据,以便测试您的代码
标签: javascript jquery html ajax json