Miért küldi be kétszer az üzenetet az adatbázisba? (jquery, php, mysql)
Éppen írogatok egy ajaxos chatet, aztán az üzenet küldésnél valamit elbasztam, és kétszer küldi el az üzeneteket. A JS fájlomban éppen azt alakítgattam, hogy csak az enter gomb megnyomásával küldje el az üzeneteket, és csak ezek után jelentkezett az a probléma, hogy kétszer küldi el a 'name' id-vel rendelkező input tartalmát. A name.php-ban egy hagyományos adatbázisba küldés van jelen, ami az enter-es dolog előtt tökéletesen működött, szóval csak az alábbi js fájlra tudok gyanakodni:
$(document).on("keypress", "input#name", function(e) {
if (e.which == 13) {
var name = $('input#name').val();
if($.trim(name) != '') {
$.post('ajax/name.php', {name: name}, function(data) {
});
}
}
});
Előre is köszönöm szépen a válaszokat!
Nem lehet, hogy az enter egy submitot is elindít, ami ugyanúgy meghívja (egy másik fv-ben) az ajax küldést?
A folyamatok kulcspontjaiba helyezz el néhány console.log-ot, és figyeld a konzolt, hogy milyen visszajelzések vannak, és mikor.
Jó lenne az ajaxnak egy visszajelző részt is betenni (onsuccess, onerror), mert így nem látod mi történik a visszatéréskor.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!