正确的方法来做动态jquery按钮

时间:2013-08-11 20:18:52

标签: php jquery mysql

这是我的情景:

我的内容是从mySQL数据库动态生成的。我想为列表中的每个项目提供数量并添加到购物车按钮(每页30个数百个)。通常在javascript中我会使用onSubmit的函数,其值在PHP循环中创建。我知道这是不好的做法而且不受欢迎。

那么我将如何使用jquery根据点击的按钮从表单中获取信息?

1 个答案:

答案 0 :(得分:2)

在PHP中,为按钮添加data-...属性,包括项目ID或任何需要的唯一标识符:

<tr>
  <td>
    <button  data-id="1">add</button>
  </td>
  <td>
    Item ID 1
  </td>
  <td>
    Quantity: <input type="number" />
  </td>
</tr>

在jQuery中,可以通过.data()方法引用它:

var itemid = btn.data('id');

您可以使用.closest()查找按钮的容器,并从那里找到其他相关数据:

$('button').click(
  function()
  {
    var btn = $(this);
    var itemid = btn.data('id');
    var row = btn.closest('tr');
    var inp = row.find('input');
    var qty = inp.val();
    addSomething(itemid, qty);
  }
);

示例CodePen:http://codepen.io/paulroub/pen/GzIhg