2016-05-26 10 views
0

Diese Frage wurde oft beantwortet, aber die können mir nicht helfen. Ich habe versucht, AJAX-Anruf von einem Formular zu tun, aber aus irgendeinem Grund rief es doppelte Zeit.AJAX duplicate call

var requestVendor = false; 
$("#vendor").change(function() { 
    var value = $("#vendor option:selected").val(); 

    var courseURL = host.concat("/admin/getcourse"); 


    if (requestVendor !=true) { 
     $.ajax({ 
      type: "POST", 
      url: courseURL, 
      data: {"id": value}, 
      success: function (response) { 
       // done something here 
       requestVendor = true; 
      } 
     }); 
    } 
}); 

enter image description here

Wie der doppelten Aufruf zu verhindern. Es macht mich jetzt verrückt.

+0

Sie führen die Änderung wahrscheinlich auch anderswo durch - können Sie mehr Code anzeigen? Vielleicht verwenden Sie ein Plugin, um die Auswahl zu stylen, die einige weitere dom-Elemente erstellt. – mplungjan

+0

Ich habe nichts mit '# vendor'ausgewählt. Mein Back-End-Teil ist von Phalcon (PHP-Framework) –

+0

Ich denke, dass es durch die doppelte Ereignisantwort von $ ('# vendor') verursacht werden kann. Change() Ereignis. versuche, console.log ("Hello") in die erste Zeile dieses Ereignis-Listeners zu setzen, um eine doppelte Überprüfung zu erhalten. – Kelvin

Antwort

0

Ich denke, es kann doppelt sein js (jquery.validate.unobtrusive.js) Sie in Ihrem Projekt verwenden oder Sie können es überprüfen, um es zu kommentieren, wenn Sie verwenden.

Ich hoffe, es wird helfen.