javascript - 发送消息后弹出不起作用

标签 javascript jquery html css

我的联系我们页面,当我发送消息时弹出窗口会显示并消失,但没有任何反应。请帮忙

联系我们页面和弹出模式

              <!-- The Contact Us Page -->
              <div class="jumbotron jumbotron-sm">
                <div class="container">
                  <div class="row">
                    <div class="col-sm-12 col-lg-12 header"></div>
                  </div>
                </div>
              </div>
              <div class="container card">
                <div class="row">
                  <div class="col-sm-12 col-lg-12">
                    <h1 class="h1">Contact us <span class="fa fa-envelope"></span> <!--<small class="col-xs-12" style="padding-left: 0">We will get back to You</small>--></h1>
                  </div>
                </div>
                <div class="row">
                  <div class="col-sm-12 col-md-12">
                    <div class="cardStyle">
                      <form name="contact" id="form" data-toggle="validator">
                        <div class="row">
                          <div class="col-md-6">
                            <div class="form-group">
                              <label for="name">
                                Name</label>
                              <input type="text" class="form-control" id="name" placeholder="Enter name" required="required" />
                            </div>
                            <div class="form-group">
                              <label for="email">
                                Email Address</label>
                              <div class="input-group">
                                <span class="input-group-addon"><span class="glyphicon glyphicon-envelope"></span>
                                </span>
                                <input type="email" class="form-control" id="email" placeholder="Enter email" required="required" />
                              </div>
                            </div>
                            <div class="form-group">
                              <label for="subject">
                                Subject</label>
                              <select id="subject" name="subject" class="form-control" required="required">
                                <option value="none" selected="" disabled>Choose One:</option>
                                <option value="general">General Customer Service</option>
                                <option value="collaborate">Collaborate with Us</option>
                                <option value="bug">Found a Bug/Issue</option>
                                <option value="other">Any other Queries</option>
                              </select>
                            </div>
                          </div>
                          <div class="col-md-6">
                            <div class="form-group">
                              <label for="name">
                                Message</label>
                              <textarea name="message" id="message" class="form-control" rows="9" cols="25" required="required" placeholder="Message"></textarea>
                            </div>
                          </div>
                          <div class="col-md-12">
                            <button type="submit" class="btn btn-success pull-right" id="btnContactUs">Send Message</button>
                          </div>
                        </div>
                      </form>
                    </div>
                  </div>
                </div>
              </div>

这是应该出现的弹出模式

                                <!-- Form submitted Thank You Modal -->
                                    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                                    <div class="modal-dialog" role="document">
                                    <div class="modal-content">
                                    <div class="modal-header">
                                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                                        <h4 class="modal-title text-center" id="myModalLabel">Contact</h4>
                                    </div>
                                    <div class="modal-body">
                                        <h3 class="h3 text-center">Thank you for your feedback! We will get back to you.</h3>
                                    </div>
                                    <div class="modal-footer">
                                        <button type="button" class="btn btn-success" data-dismiss="modal">Close</button>
                                    </div>
                                    </div>
                                    </div>
                                    </div>

JavaScript 文件

    $(document).ready(function() {
      $('#form').validator().on('submit', function(e) {
        if (e.isDefaultPrevented()) {
          // handle the invalid form...
          $('#myModal').modal('hide');
        } else {
          // everything looks good!
          $('#myModal').modal('show');
        }
      })

    });

最佳答案

由于您仅在未调用 preventDefault() 时才尝试显示模式,因此将执行表单的默认操作,即提交表单。这会导致页面加载,并且由于您没有在表单上指定 action 属性,它将提交到同一页面。换句话说,页面只是重新加载。

如果您不想导致页面重新加载,您必须始终调用 preventDefault(),然后使用 AJAX 提交数据。

关于javascript - 发送消息后弹出不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43834470/

相关文章:

javascript - PHP/mysql - 如何将变量从类传递到单独的 index.php?个人资料页面?

html - 居中 Div,用内边距代替边距

javascript - 如何防止空白页对HTTP错误使用react

javascript - 避免 JavaScript 插件版本冲突

javascript - 在jQuery中,如何将多个delay()方法与css()一起使用?

javascript - 根据用户从下拉列表中的选择显示多个文本框

javascript - 如何在 ngModel 日期中使用但仅使用月、年和日期

javascript - checkValidity 更新 UI

javascript - 在 POST 调用中重定向到不同的页面 (jquery)

javascript - 如何查看附加到 :hover and other pseudo classes in firebug and the chrome debugger 的样式