我有一个简单的HTML页面:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p id="demo">Nothing here</p>
<button onclick="?">Button</button>
</body>
</html>
和一个单独的PHP文件:
<?php
// Load and exec craigslist
$site = curl_init("https://www.craigslist.org/about/sites");
curl_setopt($site, CURLOPT_RETURNTRANSFER, true);
$target = curl_exec($site);
$dom = new DOMDocument();
@$dom -> loadHTML($target);
// Save logo text
$title = $dom -> getElementById('logo') -> nodeValue;
?>
这就是我想要做的事情:
当我单击HTML页面上的按钮时,我希望运行PHP脚本以便我可以获得craigslist标题并将其存储为PHP变量($title
)。我想将<p id="demo>
(“Nothing here”)中的文本替换为$ title(“craigslist”)中存储的文本。
我该怎么做?
答案 0 :(得分:1)
将您的HTML更改为此
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p id="demo">Nothing here</p>
<button onclick="myFunc()">Button</button>
<script>
function myFunc() {
var xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("demo").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","file.php",true); //Change file.php to the location of your php file
xmlhttp.send();
}
</script>
</body>
</html>
并将此行添加到设置标题变量
的PHP文件after
中
echo $title;
现在当然最好的情况是你会使用jQuery的内置AJAX,但是效果不错