动态获取按钮ID

时间:2015-08-06 12:40:04

标签: jquery ajax symfony button twig

点击按钮时我需要获取按钮ID

这是我的按钮代码,用于在条件为真时动态显示动态数据。

嫩枝:

  {% for usr in userstats %}
    {% if usr.condition == TRUE %} 
        <button type="submit" class="btn btn-success btn-xs  myOnButton.onclick = function(event){alert(event.currentTarget.id);} myOnButton">Allow</button> 

这是我的按钮---

ajax
<script>
    $(".myOnButton").on('click', function () {
        if (confirm('{% trans %}Are you sure?{% endtrans %}')) {
            $('body').addClass('load');

            var url = '/hello/hello';
            // Submit data via AJAX
            var data = {};
            $.ajax({
                url: url,
                type: 'POST',
                success: function (data) {
                    // Redirect to view
                    url = '/hello';
                    location.href = url;
                }
            });
        }
        return false;
    });

为了更清楚 - 假设在一栏中我们有(名称:Dell,CompanyId:3001,地址 - HelloDell,Phone-07555,条件:True),而在其他栏目中我们有(名称:Apple,CompanyId:5001,地址 - HelloApple,电话号码07555,条件:真)。

那么如何在twig文件中单击按钮时获取CompanyId?

有人知道这个问题的解决方案吗?

1 个答案:

答案 0 :(得分:2)

使用普通JS(没有框架)并且假设您有多个按钮与类myOnButton,您可以轻松地执行此操作:

var buttonClickHandler = function(e){
  console.log(e.target.id);
}

var buttonList = document.getElementsByClassName('myOnButton');
buttonList.forEach(function(button){
  button.addEventListener('click', buttonClickHandler);
});

EDIT1&amp; EDIT2:

使用JQuery我假设相应的代码看起来像这样:

$('.myOnButton').on('click', function(e){
  var buttonId = e.currentTarget.id;
  //start post request
  $.post('my/path/to/service.php', {id:buttonId}, function(data, err){
     //wait for response here
     console.log("my data yippii", JSON.stringify(data));
  })
});

PHP部分service.php看起来像这样(我必须承认这绝对不是我的力量)

//retrieve id
id = $_POST['id'];

现在您已获得ID,您可以验证它并开始在DB上选择

希望这有帮助