我在使用jQuery的Internet Explorer中遇到attr('disabled','disabled')或prop(“disabled”,true)的问题在firefox和chrome中,这表现得如预期的那样。有什么想法吗?
我正在尝试禁用MVC应用程序下拉列表中的项目。它在IE中不起作用。
var count = parseInt($("#numCount").val());
if ((isNaN(count) === false) && (count > 500)) {
$("#ReportType option[value='Report']").attr("disabled", "disabled");
$("#ReportType option[value='Report']").prop("disabled", true);
}
答案 0 :(得分:2)
这应该适用于IE 9+,甚至IE 8。
这可能不起作用的原因是当浏览器被强制进入IE 7行为时:
<meta>
标记可能已用于模拟IE7(过去通常会为较旧的网站继续使用)。
其他东西可能触发了怪癖模式,当发生这种情况时,所有赌注都会关闭。
开发人员工具(F12)可以为您提供帮助。
答案 1 :(得分:0)
试试这个:
$('#ReportType > option[value="Report"]').attr('disabled', 'disabled');
在IE 10,FF等中适用于我
希望它有所帮助。
答案 2 :(得分:0)
parseInt
导致此问题的可能性很小。
尝试更改:
parseInt($("#numCount").val())
要:
parseInt($("#numCount").val(), 10)
或者:
Number($("#numCount").val())