JavaScript 不会正确更改 iframe src

JavaScript won't change iframe src correctly

本文关键字:iframe src JavaScript      更新时间:2023-09-26

我最近开始对JS感兴趣,并且一直在胡闹。我已经在我的HTML代码中编写了一些嵌入式JS,并且想知道为什么它无法正常工作。无论选中哪个框,代码似乎总是将src更改为http://www.learn ... fillitin_mult_twelve.xml。在这里测试一下。

        <iframe height="400" width="600" id="multGame" src="http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_six.xml"></iframe>

        <select id="timestableSlt" onchange="changeGame()">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
            <option value="5">5</option>
            <option value="6" selected="selected">6</option>
            <option value="7">7</option>
            <option value="8">8</option>
            <option value="9">9</option>
            <option value="10">10</option>
            <option value="11">11</option>
            <option value="12">12</option>
        </select> 
        <script>
        function changeGame() {
            var e = document.getElementById("timestableSlt");
            var strUser = e.options[e.selectedIndex].text;

            if (strUser = "1") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_one.xml";
            } else if (strUser = "2") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_two.xml";
            } else if (strUser = "3") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_three.xml";
            } else if (strUser = "4") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_four.xml";
            } else if (strUser = "5") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_five.xml";
            } else if (strUser = "7") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_seven.xml";
            } else if (strUser = "8") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_eight.xml";
            } else if (strUser = "9") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_nine.xml";
            } else if (strUser = "10") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_ten.xml";
            } else if (strUser = "11") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_eleven.xml";
            } else if (strUser = "12") {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_twelve.xml";
            } else {
            document.getElementById('multGame').src = "http://www.learninggamesforkids.com/_games/Main.swf?xml=assets/fill_in_blanks/fillitin_mult_six.xml";
            }
        }
        </script>

问题是你的比较=.请改用strUser === "5"

strUser = "1"

将 strUser 的值设置为 "1" 并重复该过程,将其设置为 n+1,直到它到达最后一个 else if 语句,这就是为什么 strUser 最终总是等于 12。

如果要比较值(而不是设置值(,则需要使用两个等号。

strUser == "1"