2014-01-21 60 views
0

我想通過ajax從外部數據庫加載多個php文件到phonegap。 我已經嘗試通過複製JavaScript並更改爲txtHint1在我的第二個腳本,但它無法正常工作。所以我想知道如何加載多個外部文件到一個HTML?通過ajax加載多個php頁面到phonegap

<!-- database ---> 
     <script> 
      function showID(str) 
      { 
       if (str=="") 
       { 
        document.getElementById("txtHint").innerHTML=""; 
        return; 
       } 
       if (window.XMLHttpRequest) 
       {// code for IE7+, Firefox, Chrome, Opera, Safari 
        xmlhttp=new XMLHttpRequest(); 
       } 
       else 
       {// code for IE6, IE5 
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
       xmlhttp.onreadystatechange=function() 
       { 
        if (xmlhttp.readyState==4 && xmlhttp.status==200) 
        { 
         document.getElementById("txtHint").innerHTML=xmlhttp.responseText; 
        } 
       } 
       xmlhttp.open("GET","http://database.com/about.php"+str, true); 
       xmlhttp.send(); 
      } 
     </script> 

     <script> 
      function showHISTORY(str) 
      { 
       if (str=="") 
       { 
        document.getElementById("txtHint1").innerHTML=""; 
        return; 
       } 
       if (window.XMLHttpRequest) 
       {// code for IE7+, Firefox, Chrome, Opera, Safari 
        xmlhttp=new XMLHttpRequest(); 
       } 
       else 
       {// code for IE6, IE5 
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
       xmlhttp.onreadystatechange=function() 
       { 
        if (xmlhttp.readyState==4 && xmlhttp.status==200) 
        { 
         document.getElementById("txtHint1").innerHTML=xmlhttp.responseText; 
        } 
       } 
       xmlhttp.open("GET","http://database.com/history.php"+str, true); 
       xmlhttp.send(); 
      } 
     </script> 


      <INPUT TYPE="BUTTON" name="id" style="background:url() no-repeat; border-style:none; width:0px; height:0px;" onload="showID()" value=""> 
       <div id="txtHint"></div> 

      <INPUT TYPE="BUTTON" name="id" style="background:url() no-repeat; border-style:none; width:0px; height:0px;" onload="showHISTORY()" value=""> 
       <div id="txtHint1"></div> 

回答

0

你有兩個功能,一個名爲showID(str)

應該僅僅是一個功能叫showID(str)

所以有一個叫showID(str)和一個叫showIDSomethingElse(str)

那麼你的HTML改爲

<INPUT TYPE="BUTTON" name="id" style="background:url() 
    no-repeat; border-style:none; width:0px; height:0px;" 
    onload="showID()" value=""> 

<div id="txtHint"></div> 

<INPUT TYPE="BUTTON" name="id" style="background:url() 
    no-repeat; border-style:none; width:0px; height:0px;" 
    onload="showIDSomethingElse()" value=""> 
+0

您好,感謝!我試過這種方法,但它不能工作。 – user3042348

+0

你有沒有考慮過使用jQuery?它使AJAX變得更容易,試試Krish R的解決方案。 –

0

你可以嘗試一下,你可以保留一個常見的ajax函數並傳遞參數並獲取相應的頁面並更新。

的Javascript:

str="aboutus"; 
xmlhttp.open("GET","http://database.com/common.php?page="+str, true); 

中的common.php

switch($_GET['page']){ 
    case "aboutus": 
     include("aboutus.php"); 
    break; 
    .... 

    }