2017-01-22 18 views
0

フォームを送信すると、データを挿入して約2回メールを送信します。Ajaxフォーム送信データ2回

ここで何が問題になりますか?

成功すると、私はボタンにfadeoutを与え、ユーザーはそれを2回クリックすることができません。これはこれにはいいのではないですか?

<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>'); 
     } 
    }); 
}); 
+0

あなたのHTML送信ボタンコードはどこですか? –

+0

私はそれを更新しました。 –

+0

ids 'AjanlatKeresBtn'を持つボタンが見つかりませんでしたか?送信ボタンコードはどこですか? –

答えて

0

私はlocation.hrefでこの問題を解決しました。

関連する問題