使用Ajax调用不同的POST变量

时间:2013-04-04 21:51:13

标签: php jquery

我还是jQuery的新手,并试图将这个问题弄清楚,希望有人可以提供帮助。我有这个jQuery代码,需要根据被点击的元素传递不同的值。创建的每个元素在其ID中都有唯一的编号(这是必需的)。如果我手动将jQuery代码更改为特定ID并调用,例如:

http://mysite/examplepost?effect=113

这会奏效。但我需要$('#div- ...这里有不同的数字......')才能在同一页面上处理多个元素。我已经让PHP方使用以下方法生成不同的值:

if($_GET['effect'] == $id){

我只需要使用它来处理ajax,以便它不会重新加载页面。

示例:

$('#div-113').on('click', function() {

    var dataString = 'effect=113';  

        jQuery.ajax(
            {
            type:'GET',
            url:'?',
            data: dataString,
            success: function(data){
                alert('Works');         
            }
          }
        );

      });

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

我会为您的所有div提供一个共同的类名(即myClickableDiv)以及一个特定的data-id

通过这种方式,您可以按照常用的类名来定位所有div,而不必根据id的形成方式找出它。 data-id允许您只向Click处理程序提供非常具体的信息(如整数),而不必解析id

HTML:

<div class=".myClickableDiv" id="div-XXX" data-id="XXX">My Div</div>

JS:

$('.myClickableDiv').on('click', function() {

    var dataString = $(this).attr('data-id');  

    jQuery.ajax({...});

});