0

单击按钮时,我提交表单并将一些数据发布到data.php.

data.phpdiv在 index.php 上显示的结果

索引.php:

function showUser(form, e) {
      //alert(myid);
      e.preventDefault();
      e.returnValue=false;
      var xmlhttp;
      var sent = form.elements['sent'].value;  
      var text1 = document.getElementById('previewUrl').innerText || document.getElementById('previewUrl').textContent;
      var text2 = document.getElementById('previewTitle').innerText || document.getElementById('previewTitle').textContent;
      var text3 = document.getElementById('previewDescription').innerText || document.getElementById('previewDescription').textContent;

      //alert(text3);      
      console.log(sent);

      if (window.XMLHttpRequest) {
        xmlhttp=new XMLHttpRequest();
      }
      else {
        // code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
      xmlhttp.onreadystatechange = function(e) {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200){

xmlhttp.responseText.resultOne;
xmlhttp.responseText.resultTwo;

document.getElementById("myFirstDiv").innerHTML=xmlhttp.responseText.resultOne;
document.getElementById("mySecondDiv").innerHTML=xmlhttp.responseText.resultTwo;
        }
      }
        xmlhttp.open(form.method, form.action, true);
      xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
      deURIComponent(text3);
      xmlhttp.send('sent=' + sent + '&text1=' + text1 + '&text2=' + text2 + '&text3=' + text3);
    }

Data.php 看起来像这样:

<?php
//sent has value "http://www.paulgraham.com/herd.html"
$url=$_POST['sent'];
$text1=$_POST['text1'];
$text2=$_POST['text2'];
$text3=$_POST['text3'];

//Some processing

echo $restult1;  // I want to show this on <div1> on main page   index.php

//Some processsing

echo $result2;    // I want to show this on <div2> on main page index.php


?>

如何在 index.php 的不同 div 上显示 result1 和 result2?

4

2 回答 2

1
<?php
//sent has value "http://www.paulgraham.com/herd.html"
$url=$_POST['sent'];
$text1=$_POST['text1'];
$text2=$_POST['text2'];
$text3=$_POST['text3'];

//Some processing


$resultArray = array("resultOne" => $result1,"resultTwo" => $result2);

echo json_encode($resultArray);

?>

所以你会从 php 页面得到一个响应对象。

现在您可以在 Js 中访问它的值,如下所示

在 Javascript 中

xmlhttp.responseText.resultOne;
xmlhttp.responseText.resultTwo;

现在您可以设置两个 div

document.getElementById("myFirstDiv").innerHTML=xmlhttp.responseText.resultOne;
document.getElementById("mySecondDiv").innerHTML=xmlhttp.responseText.resultTwo;
于 2013-10-26T14:12:28.227 回答
1

也许您可以回显一个脚本,在其中分配result1todiv1result2to的值div2

例如,如果您使用 jquery,您可以执行以下操作:

echo "<script> $("#div1").innerHTML(".$result1");</script>"
于 2013-10-26T14:13:19.500 回答