我正在研究ajax功能来计算按钮上的点击次数
我的ajax代码是
<script type="text/javascript">
function call_user(user_id){
jQuery.ajax({
type: 'POST',
data: 'user_id='+user_id,
url : '<?php echo $this->basePath(); ?>/ajax/call.php',
});
}
</script>
HTML代码
<a href='tel:<?php echo $row['contact']; ?>' onclick='call_user(<?php echo $row['user_id'];?>);' title='Call'>Call Now</a>
它是一个call now
按钮并且点击它我正在调用call_user()javascript函数。
计算点击次数和数据库查询的逻辑用call.php
文件
它在桌面/笔记本电脑版本中运行良好。但是计数器并没有在移动设备中增加(iphone / android)。我想ajax不会在移动设备中被调用。
可能是什么问题。请帮忙。
答案 0 :(得分:2)
当我尝试原始代码时,即使在桌面上也无法提醒点击事件中的任何内容,这表明您的事件绑定可能存在问题。
我创建了一个jsfiddle,我使用jquery和css类绑定了click事件,并为user_id添加了一个数据值。这是在桌面和移动设备上触发点击事件。
http://jsfiddle.net/williamtdavies/871af5o0/
$(document).ready(function(){
$('.call__link').on('click', function(){
var user_id = $(this).data('userid');
alert(user_id);
jQuery.ajax({
type: 'POST',
data: 'user_id='+user_id,
url : '<?php echo $this->basePath(); ?>/ajax/call.php',
});
});});
<a class="call__link" href="tel:" title="Call" data-userid="123">Call Now</a>
您将注意到正在触发警报,因此将启动ajax调用。
我原本以为它可能是tel:劫持事件但是你会在移动设备上看到tel:event和click事件被调用。
如果您使用实时代码尝试上述示例并在移动设备上发出警报,那么我们可以确认它是ajax请求本身,这将是要关注的领域。