[英]PHP/AJAX check if div is clicked and return data
如何检查是否单击了div,然后返回信息?
function kat(){
echo "<div class='turinys'>";
$kategorijos = dbquery("SELECT * FROM kategorijos");
while($kat = dbarray($kategorijos)) {
echo"<div class='kategorija'><a href='".BASEDIR."kategorija/".seoname($kat['kategorija'])."/".$kat['id']."' class='kat'>".trimlink($kat['kategorija'],44)."</a></div>";
}
echo "</div>";
}
echo "<div class='mygtukas-js' onclick='kat();'>";
echo "</div>";
但是实际上这是错误的,因为我的mygtukas-js有一个下拉菜单。 我需要生成一个代码,让我按下一个按钮,然后将生成菜单。 也许有人知道吗?
编辑:此div <div class='mygtukas-js'></div>
( 必须在开始和结束之前 ) <div class='turinys'>
STARTS。
一些新主意? :?
编辑2:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'>
</script>
<script>
$(document).ready(function(){
$('#mygtukas-js').click(function() {
$("#turinys").load('b.php');
});
});
</script>
和b.php
<?php
$kategorijos = dbquery("SELECT * FROM kategorijos");
while($kat = dbarray($kategorijos)) {
echo"<div class='kategorija'><a href='".BASEDIR."kategorija/".seoname($kat['kategorija'])."/".$kat['id']."' class='kat'>".trimlink($kat['kategorija'],44)."</a></div>";
}
?>
但没有产生信息:(
您可以使用jQuery检查div是否被单击。 像这样:
$('.turinys').click(function(e) {
$(this).html("Add any html to the div");
});
用于不同的php文件。 让我们调用A.php和B.php。 A.php包含菜单代码。
<?php
echo "<div class='turinys'>";
$kategorijos = dbquery("SELECT * FROM kategorijos");
while($kat = dbarray($kategorijos)) {
echo"<div class='kategorija'>
<a href='".BASEDIR."kategorija/".seoname($kat['kategorija'])."/".$kat['id']."' class='kat'>".trimlink($kat['kategorija'],44)."</a>
</div>";
}
echo "</div>";
?>
<script>
function kat(){
var xhr = new XMLHttpRequest();
xhr.open("GET", "A.php", false);
xhr.send(null);
// You can also check response status if you need.
var serverResponse = xhr.responseText;
document.getElementById('menu').innerHTML = serverResponse;
}
</script>
<?php
echo "<div class='mygtukas-js' onclick='kat();' id='menu'>";
echo "</div>";
?>
创建您的PHP文件,我想它还将包含HTML。
创建一个“单击” JQuery函数,并确保将POST发送到应处理请求的特定PHP文件/控制器。 如果您只想直接获取上面的文件,请指向它。
应该是这样的:
$(document).ready(function(){
$('#send').click(function() {
$("#menu").load('URL_TO_YOUR_PHP');
});
});
多亏了AJAX,应该显示“ #menu”,其中将包含PHP文件发回的所有内容。
HTH。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.