weixin_33749131 2017-01-22 12:55 采纳率: 0%
浏览 26

Ajax表单发送数据2次

When I send the form, in insert the data and send email about 2 times, not only once.

Whats going wrong here?

In the success, I give the button a fadeout, so the user cant click it 2 times. Isn't this good for that?

<form class="form-horizontal" id="AjanlatForm" method="post">
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >Az Ön neve:</label>
            <div class="col-md-8">
              <input id="AjanlatNev" name="AjanlatNev" type="text" class="form-control input-md">
            </div>
          </div>
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >E-mail címe:</label>
            <div class="col-md-8">
              <input id="AjanlatEmail" name="AjanlatEmail" type="text" class="form-control input-md">
            </div>
          </div>
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >Telefonszáma:</label>
            <div class="col-md-8">
              <input id="AjanlatTel" name="AjanlatTel" type="text" class="form-control input-md">
            </div>
          </div>
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >Szállítási cím:</label>
            <div class="col-md-8">
              <input id="AjanlatCim" name="AjanlatCim" type="text" class="form-control input-md">
            </div>
          </div>
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >Mennyiség:</label>
            <div class="col-md-8">
              <div class="input-group">
                <input type="text" class="form-control" id="AjanlatMennyiseg" name="AjanlatMennyiseg">
                <span class="input-group-btn">
                <select class="btn selectBtn" id="AjanlatMennyisegTipus" name="AjanlatMennyisegTipus">
                  <option  value="Darab">Darab</option>
                  <option  value="Kamion">Kamion</option>
                  <option  value="Raklap">Raklap</option>
                  <option  value="Tekercs">Tekercs</option>
                  <option  value="Zsák">Zsák</option>
                  <option  value="cm">cm</option>
                  <option  value="m">m</option>
                  <option  value="m2">m2</option>
                  <option  value="m3">m3</option>
                </select>
                </span> </div>
            </div>
          </div>
          <div class="form-group">
            <label class="col-md-3 control-label ajanlat_label" >Üzenet:</label>
            <div class="col-md-8">
              <textarea name="AjanlatUzenet" id="AjanlatUzenet" rows="7" class="form-control input-md"></textarea>
            </div>
          </div>
          <div class="text-center">
            <input type="hidden" id="AjanlatTermekID" name="AjanlatTermekID" value="<?php echo $akcioId; ?>">
            <button type="button" id="kerdesButton" class="btn btn-default sidebar_button">Ajánlatkérés elküldése</button>
          </div>
          <div class="text-center">
            <div id="AjanlatResult"></div>
          </div>
        </form>

$("#AjanlatKeresBtn").click(function(e) 
{
    $('#AjanlatResult').hide();
    $("#AjanlatModal").modal("show");
    $('#kerdesButton').click(function(e)
    {
        e.preventDefault();
        var FormErros = [];
        var AjanlatNev = $('#AjanlatNev').val();
        var AjanlatEmail = $('#AjanlatEmail').val();
        var AjanlatTel = $('#AjanlatTel').val();
        var AjanlatCim = $('#AjanlatCim').val();
        var AjanlatMennyiseg = $('#AjanlatMennyiseg').val();
        var AjanlatUzenet = $('#AjanlatUzenet').val();
        var AjanlatTermekID = $('#AjanlatTermekID').val();
        if($.trim(AjanlatNev) == "") { FormErros.push("Nem adta meg a nevét."); }
        if($.trim(AjanlatEmail) == "") { FormErros.push("Nem adta meg az e-mail címét."); }
        if(AjanlatEmail != "")
        {
            if(validate_Email(AjanlatEmail) == false)
            {
                FormErros.push("Elképzelhető, hogy hibásan adta meg az e-mail címét.");
            }
        }
        if($.trim(AjanlatTel) == "") { FormErros.push("Nem adta meg a telefonszámát."); }
        if($.trim(AjanlatUzenet) == "") { FormErros.push("Nem írt semmilyen kérdést vagy üzenetet."); }
        if($.trim(AjanlatTermekID) == "") { FormErros.push("Hiányzik a termék ID."); }
        if(AjanlatTermekID != "")
        {
            if(!$.isNumeric(AjanlatTermekID))
            {
                FormErros.push("A termék ID nem szám típusú.");
            }
        }
        if($.trim(AjanlatCim) == "") { FormErros.push("Nem adta meg a szállítási címet."); }
        if($.trim(AjanlatMennyiseg) == "") { FormErros.push("Nem adta meg a termék(ek) mennyiségét."); }
        if(FormErros.length == 0 )
        {
            $.ajax({
                type: 'POST',
                cache: false,
                data: $('#AjanlatForm').serialize(),
                url: 'files/uj-ajanlatkeres.php',
                success: function(data)
                {
                    var result = $.trim(data);
                    $('#kerdesButton').fadeOut("slow"); 
                    $('#AjanlatResult').fadeIn( "slow" ).html('<div class="javascript_success">'+result+'</div>');  
                },
                error: function(jqXHR, errorType, errorThrown)
                {
                    alert(errorThrown);
                },
                complete: function()
                {
                    $('#AjanlatForm')[0].reset();
                    setTimeout(function()
                    {
                        $('#AjanlatModal').modal('hide');
                        $('#kerdesButton').fadeIn("slow");  
                        location.reload();
                    }, 5000)
                }
            });
        }
        else
        {
            $('#AjanlatResult').fadeIn( "slow" ).html('<div class="javascript_rror_div">'+(FormErros.join('<br/>'))+'</div>');
        }
    });
});
  • 写回答

1条回答 默认 最新

  • weixin_33743661 2017-01-22 17:22
    关注

    I solved the problem with a location.href.

    评论

报告相同问题?

悬赏问题

  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计