gpt4 book ai didi

javascript - Internet Explorer 的 Jquery 选择框问题

转载 作者:行者123 更新时间:2023-11-29 17:32:30 24 4
gpt4 key购买 nike

好吧,这可能是一个非常奇怪的问题。我正在编写一个 Web 应用程序,我想更改某个选择框的值:

<select name="type" class="type">
<option value="word">word</option>
<option value="digit">digit</option>
<option value="letter">letter</option>
<option value="single">single character</option>
<option value="space">space</option>
</select>

在我的代码中我有这个:

switch ( target ) {
case "d":
$("select").val('digit');
break;
case "w":
$("select").val('word');
break;
case "s":
$("select").val('space');
break;
}

问题来了。此代码在所有浏览器中都按预期工作......除了 IE。 Internet Explorer(8,如果你好奇的话)除了 $("select").val("digit") 部分外都能正确处理它们。它只是不会因为某种原因改变值(value)。 javascript 解析器正确导航到开关中的那种情况,但它拒绝更改那种情况的选择框的值。有人有什么想法吗?

最佳答案

你试过吗

$('select').find('option[value=digit]').prop('selected', true); // and etc.

相反?

编辑 好吧,我可能会自己尝试一下,因为那只是我,但看看 jQuery 源代码,它几乎可以为您做到这一点。 (也就是说,jQuery 不仅仅尝试在 <select> 标记上设置“值”属性,我认为这在 FF 中有效,但在 IE 中无效。)

编辑更多 我设置了一个测试页面,它在 FF 和 IE8 中对我来说工作正常。你可以在这里查看我的测试页面:http://gutfullofbeer.net/select.html

编辑 — 2012 年 7 月 12 日 — .prop()现在是首选 (jQuery 1.6),所以我更新了示例。

关于javascript - Internet Explorer 的 Jquery 选择框问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2357317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com