选择所有选项并禁用不在IE中工作

时间:2012-08-30 03:16:07

标签: jquery html internet-explorer-8

我在IE8 multiselect中遇到了问题 我们使用jQuery来选择并禁用列表。列表正在被禁用但未被选中,同样的场景在FireFox中完美运行,其中选择了整个列表并禁用

任何人都可以帮我解决如何在IE中处理这个问题

提前致谢

以下是我的代码:

<select name="weekdays" id="weekdays" disabled="disabled" multiple>
  <option value="Monday">Monday </option>
  <option value="Tuesday">Tuesday</option>
  <option value="Wednesday">Wednesday</option>
  <option value="Thursday">Thursday </option>
  <option value="Friday">Friday</option>
  <option value="Saturday">Saturday</option>
  <option value="Sunday">Sunday</option>
</select>

2 个答案:

答案 0 :(得分:1)

方式:

$('select:disabled');

或:

$('select[disabled=true]'); // [disabled*=true] 

或:

$('select').find('*[disabled=true]');

答案 1 :(得分:0)

这就是我如何做到的:

$("#weekdays option").prop("selected",true);

鉴于你显示的html已经有disabled="disabled"我不明白为什么你需要jQuery来禁用它,但是要禁用select并选择所有选项:

$("#weekdays").prop("disabled",true).find("option").prop("selected",true);

这适用于IE7;我没有用IE8来测试。

更新:我觉得可能你遇到的问题是没有提交所选的值。 Disabled form elements don't get submitted.此常见的解决方法是创建隐藏的输入以保存所需的值。但是,如果FF不遵守这条规则,我会感到惊讶。