2014-09-23 52 views
-3

我試圖根據提供的值調用不同的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) 
        { 
        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> 

UPDATE 這裏是更新的代碼從現有的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> 
+1

問題尋求幫助調試(「爲什麼不是這個代碼的工作?」)必須包括所期望的行爲,一個特定的問題或錯誤,並在最短的代碼要重現它在這個問題本身。沒有明確問題陳述的問題對其他讀者無益。請參閱:如何創建最小,完整和可驗證示例。 – 2014-09-23 07:28:57

+0

因爲它是ASYNK calls.There上有很多問題SO – cosset 2014-09-23 07:29:46

回答

1

您的交換機缺少結束},有可能一個鏈接=)

順便說一句,請注意異步調用;)

編輯

如果您只是想去另一頁,爲什麼不使用:

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

非常簡單/有用;)

+0

謝謝我更新了代碼 – RDX 2014-09-23 07:38:05

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; 
     } 
    } 
+0

謝謝我更新了代碼 – RDX 2014-09-23 07:38:42

相關問題