javascript - 事件仅在第一次点击后触发

标签 javascript php jquery ajax

我有一个类别列表。当我点击某个类别来触发 AJAX 请求时,第一次请求不会发送。当我第二次点击时效果很好。这是我的代码

<?php foreach($this->category as $value) { ?>
  <li data-cid=<?= $value['cat_id']?> class="cid">
    <a href="http://localhost/mvc/viewbycat/index/<?= $value['cat_id'] ?>">
      <?= $value['cat_name']?>
    </a>
  </li>
<?php } ?>
$(document).ready(function () {
  var catid;
  var count = 0;

  $('li.cid').click(function (e) {
    count = 0;
    var limit = 6;
    var offset = 0;
    e.preventDefault();
    $("#main").empty();
    catid = $(this).attr('data-cid');
    displayRecords1(limit, offset, catid);
  });

感谢您的帮助!

最佳答案

您遇到了输入意外结束错误,因为您缺少});

  $(document).ready(function() {
  var catid,
      count = 0;
  $('li.cid').click(function(e) {
    e.preventDefault();

    var limit = 6,
        offset = 0,
        count = 0;

    $("#main").empty();

    catid = $(this).attr('data-cid');

    displayRecords1(limit, offset, catid);
  });
});

改变,

<li data-cid=<?= $value['cat_id']?> class="cid">

/** Note the double quotes. **/
<li data-cid="<?= $value['cat_id']?>" class="cid">
  • 避免在 PHP 中使用短标记,因为它们可能会在您的服务器上被禁用。
  • 始终检查控制台是否存在 JavaScript 错误。
  • 尝试在开始时一起初始化所有变量,以防止混淆。

阅读 Material

Opening Console in Different Browsers

PHP Short Tags

JavaScript Syntax Checker - 用于快速检查语法。

关于javascript - 事件仅在第一次点击后触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43650873/

相关文章:

javascript - 第一次成功提交后提交停止工作

javascript - JS 中的 RSACryptoServiceProvider 等效项

php - 它不会给出错误,但不会插入数据库

javascript - 使用 Javascript window.confirm 停止 window.event?

java - MongoDB:查询数组上的浮点范围

javascript - 当将其他可排序项目移到其上时,如何使可排序行为像可放置项

php - 如何在基于 Codeigniter 的博客文章和图片库中使用 plupload

php - mysql_fetch_array 仅打印第一个结果

jQuery获取带有渐变的div的背景颜色

javascript - fadeOut() 不工作?为什么?