标题中的“提交”按钮无法提交

时间:2015-08-19 14:30:10

标签: javascript jquery html ajax

我正在开发一个jquery移动应用程序。在应用程序中有一个用户必须提交的表单,我已将提交按钮放在标题的右侧。当用户填写表单并点击提交按钮并使用"ui-btn-right"类时,它无法提交。

$(document).ready(function(){
    $('.ui-btn-right').on('click', function(event) {
      $("#form1").on('submit',function(event){
        event.preventDefault();
        data = $(this).serialize();

        $.ajax({
          type: "POST",
          url: "register.php",
          data: data
        }).success(function() {
          $("input[type=text]").val("");
        });
      });
    });
});

HTML

<a href='#' class='ui-btn-right' id="button" >Register</a>

4 个答案:

答案 0 :(得分:3)

这里只是猜测,因为我们无法看到你的标记。但是,当您单击按钮时,您似乎并未真正提交表单,而您只是将提交事件连接起来。试试这个?

&#13;
&#13;
$(document).ready(function(){
    $('.ui-btn-right').on('click', function(event) {
      $('#form1').submit();
    });
  
  $("#form1").on('submit',function(event){
    event.preventDefault();
    data = $(this).serialize();

    $.ajax({
      type: "POST",
      url: "register.php",
      data: data
    }).success(function() {
      $("input[type=text]").val("");
    });
  });
});
&#13;
&#13;
&#13;

答案 1 :(得分:2)

试试这个?

$(document).ready(function(){

      $("#form1").on('submit',function(event){
        event.preventDefault();
        data = $(this).serialize();

        $.ajax({
          type: "POST",
          url: "register.php",
          data: data
        }).success(function() {
          $("input[type=text]").val("");
        });
      });

    $('.ui-btn-right').on('click', function(event) {
        $("#form1").submit(event);
    });
});

答案 2 :(得分:0)

如果您的按钮不在表单中并且您想要触发提交事件,则必须执行以下操作:

$('.ui-btn-right').on('click', function(event) {
  $("#form1").submit(function(event){
    event.preventDefault();
    stuff();
  });
});

答案 3 :(得分:0)

可能我需要更多数据来回答,但我们可以这样做。

$('.ui-btn-right').on('click', function(event) {
   check here any alert/console message is working
}

现在您已创建$("#form1").on('submit

但要提交它,你需要做

$("#form1").submit();

手动,因为我认为此按钮位于表单之外。