2017-04-27 103 views
1

我有一个分类列表。当我点击某个类别以在第一次发送请求时触发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); 
    }); 

感谢您的帮助!

+2

请不要编辑和添加代码的网友质疑@guradio,他有一个语法错误,因为它混淆了人们不解决它,清理格式化,但不修复提问者代码中的错误,回滚。 – Script47

回答

1

你有一个Unexpected end of input错误,因为你正在使用短标签PHP失踪});

$(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"> 
  • 避免,因为它们可能在您的网站上禁用rver。
  • 总是检查控制台是否有JavaScript错误。
  • 尝试并初始化所有变量,以防止混淆。

阅读材料

Opening Console in Different Browsers

PHP Short Tags

JavaScript Syntax Checker - 为了您的语法的快速检查。

0

你没有关闭$(document).ready

$(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); 
    }); 
}); // This here 
+0

这只是文件准备就绪的部分,我有权利结束。 Thnak you –

+0

这不是从第二次点击工作的原因,因为我伤心我关闭document.ready我有更多的代码 –

相关问题