javascript - Bootstrap 3 模式表单不触发 jQuery .submit()

标签 javascript jquery forms twitter-bootstrap-3

我正在尝试获取 Bootstrap 3 模态表单来触发 jQuery 中的 form.submit(),但无论我尝试什么,我都无法让它触发。

<div class="modal fade" id="modal-signup" tabindex="-1" role="dialog" aria-labelledby="modal-signup" aria-hidden="true">
  <div class="modal-dialog modal-sm">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
        <h4 class="modal-title">Sign up</h4>
      </div>
      <div class="modal-body">
        <form role="form" action="/"  id="modal-signup-form" >
          <div class="form-group">
            <input type="email" class="form-control input-lg" placeholder="email">
          </div>
          <div class="form-group">
            <input type="password" class="form-control input-lg" placeholder="password">
          </div>
          <div class="form-group">
            <input type="password" class="form-control input-lg" placeholder="confirm">
          </div>
        </form>
      </div>
      <div class="modal-footer">
        <p>Already have account ? <a href="#" data-toggle="modal" data-target="#modal-signin">Sign in here.</a></p>
        <input type="submit" class="btn btn-success btn-block btn-lg" value="Sign up">
      </div>
    </div>
  </div>
</div>

和 JS

$("#modal-signup-form").submit(function( event ) {

event.preventDefault();

  alert("made it");

    $.ajax({
        type: "POST",
        url: "adduser.php",
        data: $('form.adduser_model').serialize(),
        success: function (msg) {

            $("#thanks").html(msg)
            $("form.noteform").modal('hide');
        },
        error: function () {
            alert("failure");
        }
    });
    return false;
});

我创建了一个 fiddle ...

http://jsfiddle.net/menriquez/sreco3jt/

如果您在模型表单中点击“注册”和“注册”,我希望事件会触发并看到警报,但事实并非如此。

最佳答案

这是因为提交按钮不在 #modal-signup-form 内表单元素。

将按钮添加到 <form> 的内部,或添加一个事件处理程序以在单击按钮时触发提交:

$(document).on('click', '#modal-signup-form-submit', function (e) {
    $('#modal-signup-form').submit();
});

Updated Example

关于javascript - Bootstrap 3 模式表单不触发 jQuery .submit(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27832811/

相关文章:

forms - 表单数据是否由浏览器自动编码?

javascript - AngularJS 未在网页上呈现 "AngularJSDemos"Dan Wahlin

javascript - 如何在 react-native 中播放音频文件?主要在安卓

jquery - 以json格式返回大量记录

javascript - 如何实现 JQuery.noConflict() ?

jquery - 在 GMAP3 和 JQuery 中平移和缩放到特定坐标

jquery - 使用 jquery/ajax 更新 django 表单

html - 在 div 中给出边框标题

javascript - Jquery 函数无法正确阻止输入字母

javascript - 为什么我的 HTML 按钮不能运行我的 JavaScript 函数?