Jquery onclick有多个不同的过滤器

时间:2015-08-12 19:56:20

标签: javascript jquery ajax

我目前正在尝试使用Jquery .onclick将div作为按钮使用,点击后,为用户过滤一堆数据。例如,我有类别Sports和子类别basketballbaseball

单击该按钮时,我尝试对数据库进行Ajax调用,以过滤涉及子类别的所有帖子。

我的问题是,尽可能缩小此代码的最佳方法是什么。如果我点击篮球或棒球,我可以从Ajax调用中将参数发送到我的php文件,并为php中的不同参数设置多个if语句吗?

以下是div的示例:

<div class="filter" id="basketball">

</div>
<div class="filter" id="baseball">

</div>

如果我可以通过AJax将参数传递给PHP,那么可以在Jquery中创建一个处理Ajax的函数并执行以下操作吗?

$('#basketball').click(myFunction(basketball)); 
$('#baseball').click(myFunction(baseball));

myfunction(parameter){
   $.ajax({
       type: "GET",
       url: "filter.php", //Send parameter in to php?
       dataType: "json",
       success: function (result) 
       {
          ...
       }
   });

1 个答案:

答案 0 :(得分:3)

您不应该为此目的使用ID。

尝试这种方式:

<div class="filter" data-category="basketball">

</div>
<div class="filter" data-category="baseball">

</div>

关于你的javascript:

$('.filter').on('click', function(){
    var category = $(this).data('category');

    $.ajax({
        type: "GET",
        url: "filter.php?category="+category, 
        dataType: "json",
        success: function (result) 
        {
           ...
        }
    });
});