Javascript 如何使用AJAX显示html检索到的数据?

Javascript 如何使用AJAX显示html检索到的数据?,javascript,php,html,ajax,simple-html-dom,Javascript,Php,Html,Ajax,Simple Html Dom,我有3个文件:index.html、parse.php、profile.html index.html:它有一个表单,在这里我给出profile.html的链接,并且通过parse.php中的HTMLDOM解析,我应该在同一个页面上获得所有数据,即index.html 我是AJAX新手,直到现在才使用它 我该如何完成手术 index.html: <form action="parse.php" method="post" id="myForm"> Name: <input ty

我有3个文件:index.html、parse.php、profile.html

index.html:它有一个表单,在这里我给出profile.html的链接,并且通过parse.php中的HTMLDOM解析,我应该在同一个页面上获得所有数据,即index.html

我是AJAX新手,直到现在才使用它

我该如何完成手术

index.html:

<form action="parse.php" method="post" id="myForm">
Name: <input type="text" name="uurl"><br>
<input type="submit">
</form>
<form action="parse.php" id="myform" method="post">
Name: <input type="text" name="uurl" id="uurl"><br>
<input type="button" value="" >
</form>

<ul class="results"></ul>

名称:
parse.php:

require 'simple_html_dom.php';
$url = $_POST['uurl'];

$html = file_get_html($url);

foreach ($html->find("span[class=full-name]") as $key => $name){
echo $name."<br>";

}
require 'simple_html_dom.php';
$url = $_POST['uurl'];

$results = array();
$html = file_get_html($url);
foreach ($html->find("span[class=full-name]") as $key => $name){
    $results[] = $name;
}

echo json_encode(array('results' => $results));
需要“simple_html_dom.php”;
$url=$_POST['uurl'];
$html=file\u get\u html($url);
foreach($html->find(“span[class=full name]”)作为$key=>$name){
echo$name。“
”; }
脚本:

<script> 

        $(document).ready(function() { 

            $('#myForm').ajaxForm(function() { 
                alert("Thank you for your comment!"); 
            }); 
        }); 
    </script>

$(文档).ready(函数(){
$('#myForm').ajaxForm(函数(){
警惕(“谢谢你的评论!”);
}); 
}); 
index.html:

<form action="parse.php" method="post" id="myForm">
Name: <input type="text" name="uurl"><br>
<input type="submit">
</form>
<form action="parse.php" id="myform" method="post">
Name: <input type="text" name="uurl" id="uurl"><br>
<input type="button" value="" >
</form>

<ul class="results"></ul>

所以从技术上讲,您甚至没有使用AJAX。Ajax基于javascript,我在您的代码中没有看到任何javascript

另外,据我所知,你不需要任何PHP代码来完成你想要做的事情

下面是你将如何做到这一点。这就是HTML

<form action="parse.php" method="post">
Name: <input type="text" name="uurl" id="uurl"><br>
<input type="submit" id="submit-form">
</form>

<div id="container">
</div>

为了清晰起见,我使用了jQuery,但它绝对不是必需的。

到目前为止,您有什么?请在此处发布您的代码。使用javascript将您的请求发送到服务器:然后使用javascript更改您的dom。@lolka_bolka用代码编辑了问题。现在您在该foreach中做什么?“你想把数据放在哪里,你解析了什么?”乔尔哈克斯说了所有的话。您还应该返回parse.php中得到的结果,然后使用
$post()
捕获它,以便在任何需要的地方显示结果。因此,您可以将这些数据添加到
$name
变量中,并返回它,而不是在
for
的循环
中执行
echo
。然后,在DOM中,通过$post()捕捉到这一点,就完成了。您可能需要修改getJSON done()函数中的代码以满足您的需要。如果我必须在parse.php中检索另一个数据,该怎么办。比如说$location。数组结果如何?我从代码中得到了这个错误:警告:json_encode():在第48Umm行的C:\xampp\htdocs\test\parse.php中检测到的递归与您的代码有关。。我为parse.php提供的代码没有任何递归?它不工作。它仍然会转到parse.php并显示在该页面上。这可能是php设置的问题。理想情况下,AJAX页面应该按原样获取profile.html,然后您可以将profile.html中的html注入容器div。尝试做同样的事情,但不使用表单。尝试获取HTML并使用jQuery将其注入容器div。我正在使用echo在parse.php页面上打印数据。html是我们解析数据的地方。此解析在parse.php中完成。