根据输入调用不同的HTML页面

时间:2014-09-23 07:27:02

标签: javascript html invoke

我正在尝试根据提供的值调用不同的html文件。另一个html页面没有加载..

 <html>
   <body>
   <p>This example calls different HTML pages based on the input</p>
      <p id="htmlinvoke"></p>
      <script>
         function loadPage(href)
                     {
                    alert('loadPage');
                         var xmlhttp = new XMLHttpRequest();
                         xmlhttp.open("GET", href, false);
                         xmlhttp.send();
                         return xmlhttp.responseText;
                     }

         function callHTML(variable)
         {
         alert('inside callHTML');
         switch(variable) {
           case 1:
              loadPage('file1.html');
             break;
         case 2:
            alert('case 2');
              loadPage('file2.html');
             break;
             case 3:
              loadPage('file2.html');
           break;
         }
         }

         function test()
         {
            alert('test');
         }
         document.getElementById("htmlinvoke").innerHTML = callHTML(2);

      </script>
   </body>
</html>

更新 以下是从现有HTML页面调用HTML页面的更新代码。请确认

<html>
   <body>
   <p>This example calls different HTML pages based on the input</p>
      <p id="htmlinvoke"></p>
      <script>
         function loadPage(href)
                     {
                     window.location.href = href;

                     }

         function callHTML(variable)
         {
         //alert('inside callHTML');
         switch(variable) {
           case 1:
              loadPage('file1.html');
             break;
         case 2:
            //alert('case 2');
              loadPage('file2.html');
             break;
             case 3:
              loadPage('file2.html');
           break;
         }
         }

         function test()
         {
            alert('test');
         }
         document.getElementById("htmlinvoke").innerHTML = callHTML(1);

      </script>
   </body>
</html>

2 个答案:

答案 0 :(得分:1)

您的开关缺少结束},可能有一个链接=)

BTW,小心异步调用;)

修改

如果您只想转到其他页面,为什么不使用:

window.location.href = "http://example.com/new_url";

非常简单/有用;)

答案 1 :(得分:1)

你在函数“callHTML”中缺少“}”的“}”。尝试更好地编写代码,这样您就可以更轻松地将这些内容本地化。

修改



    function callHTML(variable) {
        alert('inside callHTML');

        switch(variable) {
            case 1:
                loadPage('file1.html');
                break;
            case 2:
                alert('case 2');
                loadPage('file2.html');
                break;
            case 3:
                loadPage('file2.html');
                break;
        }
    }