簡體   English   中英

Ajax-將內容加載到Textarea中

[英]Ajax - Load content into Textarea

我有這個簡單的Ajax代碼,由於某種原因,它不會將內容加載到textarea上。 我需要它來加載內容,以便可以在文本區域中對其進行編輯。

這是代碼,我不確定自己在做什么錯。 但它像這樣在div中顯示

<div id="content"></div>

這是完整的代碼

<html>
<head>
<title>Editing Page Content</title>

<script type="text/javascript">
function showCustomer(str)
{
var xmlhttp;    
if (str=="")
  {
  document.getElementById("content").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("content").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","load.php?file="+str,true);
xmlhttp.send();
}
</script>

</head>
<body>
    <p>Page Select to edit</p>      

        <?php  

             $result = mysql_query("SELECT pagename FROM site_content");            
                echo "<select name=\"pagename\" onchange=\"showCustomer(this.value)\" style=\"width:300px;\">";             
                echo "<option selected  value=''>Please select a page to edit...</option>";             
                 while($row = mysql_fetch_assoc($result)){ 
                 echo "<option selected value='" . $row['pagename'] ."'>" . $row['pagename'] . "</option>\n";           
               }            
             echo "</select>";          

             ?>     

            <div id="content">
                 **it works here**
             </div>

            <textarea cols="50" id="area1" style="position: absolute; width: 700px; height: 300px;">
                     **It won't work here**
            </textarea>  

            <input type="button" value="Submit content">  

            </div>     
        </body>             
</html>

任何幫助,將不勝感激。

在您的代碼中,這看起來完全可以滿足您的要求:

if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
  document.getElementById("content").innerHTML=xmlhttp.responseText;
}

由於您的div的ID為“ content”,因此響應被放置在那里。 嘗試類似的方法:

document.getElementById("area1").value = xmlhttp.responseText;

我還必須建議您查看有關選擇MySQL APIPHP文檔,因為mysql_*被認為已過時,並且已被長期淘汰。

這對我有用:

document.getElementById("area1").value=xmlhttp.responseText;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM