触发表单提交多个提交按钮

时间:2013-11-07 20:19:17

标签: javascript jquery ruby-on-rails

我有一个带有两个提交按钮的表单,Rails后端希望在action1哈希中接收一个按钮名称(action2params)。我想表明“你确定吗?”其中一个按钮上的消息。我有这段代码:

<form action="/models" id="myform" method="post">
  <input name="action1" id="action1Button" type="submit" value="Make Action 1">
  <input name="action2" type="submit" value="Make Action 2">
</form>

  $('#action1Button').click(function() {
    $('#popup').modal('show');

    // cancel a submit
    return false;
  });

  $('#popupSubmitButton').click(function() {
    $('#myform').submit(); // I want this to trigger action1
  });

  $('#popupCancelButton').click(function(){
    $('#popup).modal('hide');
  });

问题是当表单提交时,请求中没有提交按钮的名称。有没有办法像提交按钮实际点击一样提交表单?

1 个答案:

答案 0 :(得分:1)

使用trigger()触发事件,并在事件处理程序中通过选中event.isTrigger

实际检查事件是否已触发
$('#action1Button').on('click', function(e) {
    if (!e.isTrigger) {
        $('#popup').modal('show');
        return false;
    }
});

$('#popupSubmitButton').on('click', function() {
    $('#action1Button').trigger('click');
});

$('#popupCancelButton').on('click', function () {
    $('#popup').modal('hide ');
});

FIDDLE