0

xmlhttp.responseText はどのように解析できますか? これには分割機能を使用できることをどこかで見ました。これが唯一の方法ですか、それとももっと良い方法がありますか? 現在、responseText に格納されているものは 1 つの HTML テキスト ボックスに送信されていますが、解析されたデータから複数のテキスト ボックスに入力できるように、xmlhttp.responseText を解析しようとしています。

メインページのコード:

function loadDoc()
{
   var xmlhttp;

   // code for IE7+, Firefox, Chrome, Opera, Safari
   if (window.XMLHttpRequest)
   {
      xmlhttp=new XMLHttpRequest();
   }
   // code for IE6, IE5
   else
   {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   }

   xmlhttp.onreadystatechange=function()
   {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
      {
         var doc = window.document.createElement("doc");
         doc.innerHTML = xmlhttp.responseText;
         document.getElementById("textbox").value=doc.innerHTML;
      }
   }

   xmlhttp.open("GET","loadTextBox.php?id=4",true);
   xmlhttp.send();
}

loadTextBox.php コード:

<?php
---Placeholder for correct DB login info---

$result = $mysql->query(---Place holder for correct SQL query---);

while ($row = $result->fetch_object())
{
   $queryResult[] = $row->present_tense;
}
$textboxValue = $queryResult[0];
$textboxValue2 = $queryResult[1];
echo $textboxValue;
echo $textboxValue2;
?>
4

1 に答える 1

0
<?php
---Placeholder for correct DB login info---

$result = $mysql->query(---Place holder for correct SQL query---);

while ($row = $result->fetch_object())
{
   $queryResult[] = $row->present_tense;
}
$textboxValue = $queryResult[0];
$textboxValue2 = $queryResult[1];
echo json_encode(array('first'=>$textboxValue,'second'=>$textboxValue2));
?>

responseText には、以下を使用できます。

function loadDoc()
{
   var xmlhttp;

   // code for IE7+, Firefox, Chrome, Opera, Safari
   if (window.XMLHttpRequest)
   {
      xmlhttp=new XMLHttpRequest();
   }
   // code for IE6, IE5
   else
   {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   }

   xmlhttp.onreadystatechange=function()
   {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
      {
         var doc = window.document.createElement("doc");
         var a = xmlhttp.responseText;
         a = JSON.parse(a);
         document.getElementById("textbox").value=a.first;
         document.getElementById("textbox2").value=a.second;
      }
   }

   xmlhttp.open("GET","loadTextBox.php?id=4",true);
   xmlhttp.send();
}
于 2012-09-09T17:36:33.460 に答える