如何使用javascript / jquery增加点击次数?

时间:2012-01-30 08:50:49

标签: javascript jquery ajax arrays increment

我有5个链接在循环中创建($ .each):

$.each(data, function(index, element) {
name = element.name;
id = element.id;
    $('<a href="#" id="'+id+'" onClick="submitNotification('+id+');">'+name+'</a>')

});

在我的情况下,这将创建5个链接:

<a href="#" id="1" >name1</a>
<a href="#" id="2" >name2</a>
<a href="#" id="3" >name3</a>
<a href="#" id="4" >name4</a>
<a href="#" id="5" >name5</a>

function submitNotification(cdata){
alert('you selected '+cdata->name+' on '+place+'place');

         $.ajax({ 
    type: 'POST', 
    url: 'http://www.example.com/test.php', 
    data: cdata,
    dataType:'json',
    success: function (data) {
    ...
    }

});
}

我想要的是当我点击任何链接获取提醒时:you selected name2 on 1 place。然后,如果我单击另一个链接以获得相同的警报,但place var增加1。

换句话说,每次我点击一个链接,我从{1}开始,从1开始增加1,直到达到5

然后将数据发送到ajax帖子。

现在,我有两件事情需要做的事情:

place

任何想法?知道这对我有很大的帮助。

谢谢

1 个答案:

答案 0 :(得分:0)

在函数外声明位置计数器和数据容器:

var place = 0, postData = [];

function submitNotification(cdata){
  place++;
  alert('you selected '+cdata->name+' on '+place+'place');

  postData.push(cdata);

  if (place == 5) {

         $.ajax({ 
    type: 'POST', 
    url: 'http://www.example.com/test.php', 
    data: { places: postData },
    dataType:'json',
    success: function (data) {
        ...
      }
    });

  }

}