我想使用PHP和Ajax自动更新页面。现在我在页面上有这个代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
<a href="Page-Like.php?idSub=12&idCat=32" class="post"><i class="fa fa-heart-o"></i></a>
</body>
</html>
当用户点击链接时,它会被重定向到另一个名为“Page-Like.php”的页面
include("config.php");
//get vars
$idSubliminal=$_GET["idSubliminal"];
$idCategoria=$_GET["idCategoria"];
// mysql_query("insert into Rating .... (mysql insert query)
echo "<script>
location.href=\"AudioSubliminal.php?idSubliminal=$idSubliminal&idCategoria=$idCategoria\";
</script>";
我想要的是使用Ajax以便不刷新页面。我知道我错过了javascript代码,但我想得到一些建议来完成这个脚本。
谢谢!
答案 0 :(得分:0)
您只需要一个基本的ajax请求来实现您的功能。检查下面的示例请求。
function ajaxpr(){
var URLString="idSub=12&idCat=32";
ajax_request = $.ajax({
type: 'GET',
url: "Page-Like.php",
data: URLString,
dataType : 'html',
context: $(this),
success: function (msg)
{
//perform the required operation after success
});
}
答案 1 :(得分:0)
在标签上添加功能onclick。然后使用:
定义该函数$.ajax({
type: 'GET',
data: {idSub: "12", idCat: "32"},
url: "Page-Like.php",
dataType: 'JSON',
success: function (response, textStatus, jqXHR) {
//DEFINE FUNCTION HERE
}
});
这是在没有刷新页面的情况下使用ajax函数。
答案 2 :(得分:0)
答案 3 :(得分:0)
使用ajax加载页面很容易。请点击此链接http://www.w3schools.com/ajax/
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
// Change this to your desired DOM tag
document.body.innerHTML = xhttp.responseText;
}
};
xhttp.open("GET", "Page-Like.php?idSub=12&idCat=32", true);
xhttp.send();
}
现在只需将事件监听器放入运行loadDoc()函数即可。如果链接是动态的,您可以将参数解析为函数。
但是,我注意到你的php里面有一个js脚本,它会再次重定向到AudioSubliminal.php。如果这是你想要的流量那么它没关系。如果没有,您可以创建另一个功能
function loadAudioSubliminal(idSub, idCat) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
// Change this to your desired DOM tag
document.body.innerHTML = xhttp.responseText;
}
};
xhttp.open("GET", "AudioSubliminal.php?idSubliminal=" + idSub + "&idCategoria=" + idCat, true);
xhttp.send();
}
并修改了loadDoc()以接收一个参数,以便可以再次传递idSub和idCat。例如:
function loadDoc(idSub, idCat) {
var xhttp = new XMLHttpRequest();
if (xhttp.readyState == 4 && xhttp.status == 200) {
// Change this to your desired DOM tag
document.body.innerHTML = xhttp.responseText;
// run the function after finished loading Page-like.php
loadAudioSubliminal(idSub, idCat)
}
xhttp.open("GET", "Page-Like.php?idSub=" + idSub + "&idCat=" + idCat, true);
xhttp.send();
}