jQuery .attr(“禁用”,“禁用”)在IE 10中不起作用

时间:2013-05-14 23:45:50

标签: javascript jquery internet-explorer

我在使用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);

    }

3 个答案:

答案 0 :(得分:2)

这应该适用于IE 9+,甚至IE 8。

这可能不起作用的原因是当浏览器被强制进入IE 7行为时:

  1. <meta>标记可能已用于模拟IE7(过去通常会为较旧的网站继续使用)。

  2. 其他东西可能触发了怪癖模式,当发生这种情况时,所有赌注都会关闭。

  3. 开发人员工具(F12)可以为您提供帮助。

答案 1 :(得分:0)

试试这个:

http://jsfiddle.net/ChuJh/2/

$('#ReportType > option[value="Report"]').attr('disabled', 'disabled');

在IE 10,FF等中适用于我

希望它有所帮助。

答案 2 :(得分:0)

parseInt导致此问题的可能性很小。

尝试更改:

parseInt($("#numCount").val())

要:

parseInt($("#numCount").val(), 10)

或者:

Number($("#numCount").val())