首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加/删除jQuery在IE中不起作用的选择选项

添加/删除jQuery在IE中不起作用的选择选项
EN

Stack Overflow用户
提问于 2012-10-12 18:06:52
回答 4查看 3.4K关注 0票数 1

当选择第一个下拉列表时,我尝试动态更新第二个下拉列表中的选项。它在FF、Chrome等浏览器上运行良好,但在IE 8/9下不能运行,我不明白为什么。这是一个jsFiddle

代码语言:javascript
复制
<div class="custom-field">            
    <label for="dropdown1">Select country:</label>
    <select id="dropdown1" name='properties[country]'>
        <option value="USA">USA</option>
        <option value="JAPAN">JAPAN</option>
    </select>
</div>
<div class="custom-field">            
    <label for="dropdown2">Select font:</label>
    <select id="dropdown2" name='properties[font]'>
        <option class="us" value="font1">Font1</option>
        <option class="us" value="font2">Font2</option>
        <option class="us" value="font3">Font3</option>
        <option class="jp" value="font4">Font4</option>
        <option class="jp" value="font5">Font5</option>
        <option class="jp" value="font6">Font6</option>              
    </select>
</div>  



function showFont(fontOpt){
    if (jQuery('#dropdown1').val() === 'USA'){
        var showOptions = fontOpt.filter('.us');
    } else {    
        var showOptions = fontOpt.filter('.jp');
    }
    jQuery('#dropdown2').html(showOptions);
    jQuery('#dropdown2').prop('selectedIndex', 0);
}


$(document).ready(function() {
    // get the child elements of font dropdown
    var fontOptions = $("#dropdown2").children('option');    
    $("#dropdown2").html('');

    showFont(fontOptions);

    $('#dropdown1').on("change", function(e){
        showFont(fontOptions);
    });    

});
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-10-12 18:13:40

代码语言:javascript
复制
$("#dropdown2").html('');

问题出在这条线路上。删除这一行,您的代码就可以正常工作了。

您可以使用以下命令来代替这个

代码语言:javascript
复制
$("#dropdown2").children('option').remove();
票数 4
EN

Stack Overflow用户

发布于 2012-10-12 18:13:23

这是你上面的HTML代码吗?如果是,则需要将script = 'text/javascript'从函数showFont放到末尾。这使得计算机将代码读取为javascript,而不是HTML,我认为这是在要求它这样做。希望这能有所帮助。

票数 0
EN

Stack Overflow用户

发布于 2012-10-12 18:15:54

在jquery中注释以下行;

代码语言:javascript
复制
//$("#dropdown2").html('');

看起来不错。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12856759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档