Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript和Internet Explorer 8_Javascript_Jquery_Jsp_Internet Explorer 8 - Fatal编程技术网

javascript和Internet Explorer 8

javascript和Internet Explorer 8,javascript,jquery,jsp,internet-explorer-8,Javascript,Jquery,Jsp,Internet Explorer 8,我有一个jsp页面,它在onload页面事件中使用JavaScript进行自动选择 还有一些jQuery可以动态扩展不同的div标记,其中包含一些内容 因此,问题在于调用脚本标记中页面底部的setSelection方法和js方法toggle中的jQuery方法在IE8中根本不起作用。然而,在Chrome、Firefox和IE9中,它运行良好 我在谷歌上搜索了很多这个问题,但我找不到任何有用的东西。IE8中的调试工具向我显示的唯一错误是“需要对象”和“需要表达式” 代码如下:

我有一个jsp页面,它在onload页面事件中使用JavaScript进行自动选择 还有一些jQuery可以动态扩展不同的div标记,其中包含一些内容

因此,问题在于调用脚本标记中页面底部的
setSelection
方法和js方法
toggle
中的jQuery方法在IE8中根本不起作用。然而,在Chrome、Firefox和IE9中,它运行良好

我在谷歌上搜索了很多这个问题,但我找不到任何有用的东西。IE8中的调试工具向我显示的唯一错误是“需要对象”和“需要表达式”

代码如下:

                        <html>
        <head>
            <script type="text/javascript" src="jquery-1.7.2.js"></script>
            <script type="text/javascript">
                function toggle(el)
                {
                    var val = el.options[el.selectedIndex].value;
                    if (val == "1")
                    {
                        document.getElementById("2").style.display = "none";
                        $("#1").slideToggle(250);
                    }
                    else if (val == "2")
                    {
                        document.getElementById("1").style.display = "none";
                        $("#2").slideToggle(250);
                    }
                    else if (val == "0")
                    {
                        document.getElementById("1").style.display = "none";
                        document.getElementById("2").style.display = "none";
                    }
                }
                function setSelection(selection) 
                {
                    //Here we make dynamic selection of the combo box
                    var selct = document.getElementById("sel");
                    selct.options[selection].setAttribute("selected", "selected");
                    toggle(selct);
                }
            </script>
        </head>
        <body>

        <select name="mySel" id = "sel" onchange="toggle(this);">
            <option value="0">Zero</option>
            <option value="1">One</option>
            <option value="2">Two</option>
        </select>
        <div id="1" style="border:1px;">
        </div>
        <div id="2" style="border:1px;">
        </div>
        <script>
            setSelection(0);
        </script>
        </body>
        </html>

功能切换(el)
{
var val=el.options[el.selectedIndex].value;
如果(val=“1”)
{
document.getElementById(“2”).style.display=“无”;
$(“#1”)。滑动切换(250);
}
否则,如果(val==“2”)
{
document.getElementById(“1”).style.display=“无”;
$(“#2”)。滑动切换(250);
}
否则如果(val==“0”)
{
document.getElementById(“1”).style.display=“无”;
document.getElementById(“2”).style.display=“无”;
}
}
功能选择(选择)
{
//在这里,我们对组合框进行动态选择
var selct=document.getElementById(“sel”);
select.options[selection].setAttribute(“已选择”、“已选择”);
切换(selct);
}
零
一个
两个
选举(0);

有人能帮我吗?

将代码包装到document ready函数中,然后再试一次

jQuery(document).ready(function($) {
    // Stuff to do as soon as the DOM is ready. Use $() w/o colliding with other libs;
});

带着代码到计算机上,然后将其发布到JSFIDLE上,这样我们就可以帮助Ya你是否有该站点的链接,或者它只是本地的?@Rey他也应该将其发布到这里。链接到第三方网站是一个坏主意,因为不能肯定它们会永远存在。如果JSFIDLE消失,这个问题对未来的读者来说将毫无意义。没问题,但离我很远。我将尝试编写一个类似的代码并发布它。它现在运行良好,但我必须理解为什么div标记的内容不想显示。谢谢:)