每次点击一次,jQueryAJAX就会发布到PHP
jQuery AJAX post to PHP everytime a click is fired off
我想记录页面上特定DIV
和子DIVS
内发生的每次单击。客户不应该意识到这一点。div
的内部是指向外部网站的链接。
客户端点击div
>ajax在数据库中插入记录>客户端被发送到点击链接的站点
页面上的PHP
include('quotemaster/dbmodel.inc.php');
if(isset($_POST['dataString'])) {
clickCounter();
}
PHP模型函数
function clickCounter() {
global $host, $user, $pass, $dbname;
try {
$DBH = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass);
$stmt = $DBH->prepare("INSERT INTO clickcounter (counter) VALUES (1)");
$stmt->execute();
}
catch (PDOException $e) {
echo $e->getMessage();
}
}
AJAX POST
$(function() {
$("body").click(function(e) {
if (e.target.id == "results" || $(e.target).parents("#results").size()) {
//alert("Inside div");
ajax_post();
}
});
})
function ajax_post() {
var dataString = 'CC='+1;
$.ajax({ type: "POST", url: "tq/--record-events.inc.php", data: dataString });
}
我遇到的问题(我想)是AJAX
邮件没有发送。有什么想法吗?谢谢
在您的PHP上,您有
if(isset($_POST['dataString'])) {...
您需要一个名为dataString的参数,这样您就可以用之类的东西在javascript ajax_post函数中修复它
var postData={dataString:true, CC:1}
$.ajax({ type: "POST", url: "tq/--record-events.inc.php", data: postData });
通过这种方式,jQuery将创建正确的dataString参数。希望这能帮助
尝试将POST
检查更改为:
if(isset($_POST['CC'])) {
clickCounter();
}
此外,如果您的DIV
包含一个远离页面的链接,则单击该链接可能会导致页面位置在事件冒泡到正文标记之前发生更改。如果是这样,您可以尝试将一个事件附加到调用preventDefault
的链接,从而允许事件冒泡。如果是这样,您可以检测到用户点击了链接,并在记录点击后手动执行导航。为了向代码展示如何实现这一点,您需要发布完整的div代码(包括链接)。
向ajax调用添加回调:
function ajax_post() {
var dataString = 'CC='+1;
$.ajax({
type: "POST",
url: "tq/--record-events.inc.php",
data: dataString,
success: function(data) {
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(errorThrown);
}
});
}
相关文章:
- 从jqueryajax加载php页面卸载当前页面
- 使用jQueryAjax向PHP脚本发送javascript变量
- 使用jqueryAjax和php脚本从mysql检索数据时遇到的问题
- 使用jQueryAJAX和PHP创建智能远程上传脚本
- jQueryAjax:从php插入数据
- 如何将jQueryAJAX与PHP结合使用,使用<a>标签
- 如何在PHP和Javascript中保护我的jQueryAJAX调用
- 每次点击一次,jQueryAJAX就会发布到PHP
- JQueryAJAX和php库幻灯片放映
- jQueryAJAX-基于PHP页面数据的有条件成功结果
- 从jQueryAjax向PHP传递一个值
- 如何使用JQueryAjax在服务器端调用PHP文件来返回和执行javascript
- JqueryAjax and php logic
- 在没有html表单的情况下从jQueryajax获取php数据
- JQueryAJAX调用php函数
- 我可以用PHP返回JQueryAJAX请求的输出状态吗
- 在PHP发出JQueryAJAX请求后重定向
- jQueryAjax发布到php没有捕获变量
- jQueryAJAX没有得到PHP的响应
- jQueryAjax使用PHP函数返回HTML代码