Я пытаюсь открыть django modalForm. Поскольку конкретный URL-адрес этой modalForm зависит от таблицы, я вычисляю URL-адрес для события mouseenter
и отправляю URL-адрес на сервер в случае события click
.
Однако при щелчке событие отправляет на сервер несколько запросов get вместо одного.
$('.dt-edit').on('mouseenter', function(evt){
$this = $(this);
adresid = parseInt($this.parents('tr')[0].cells[13].innerHTML);
console.log("AdresID: " + adresid)
modaltmpurl = "{% url 'adres-update-modal' 0 %}".replace(/0/, adresid)
$('.dt-edit').modalForm({
formURL: modaltmpurl
});
});
Значение adresid
ведет себя как ожидалось.
Так что, если я сделаю мою мышь, введите каждый .dt-edit
один раз и щелкните каждый элемент один раз, в журнале консоли отобразится:
AdresID: 16
AdresID: 17
AdresID: 15
AdresID: 13
AdresID: 14
тогда как мой сервер показывает:
[23/May/2019 11:07:37] "GET /adres/16/updatemodal/ HTTP/1.1" 200 7033
[23/May/2019 11:07:41] "GET /adres/16/updatemodal/ HTTP/1.1" 200 7033
[23/May/2019 11:07:42] "GET /adres/17/updatemodal/ HTTP/1.1" 200 7011
[23/May/2019 11:07:45] "GET /adres/16/updatemodal/ HTTP/1.1" 200 7033
[23/May/2019 11:07:45] "GET /adres/17/updatemodal/ HTTP/1.1" 200 7011
[23/May/2019 11:07:46] "GET /adres/15/updatemodal/ HTTP/1.1" 200 6955
[23/May/2019 11:07:49] "GET /adres/17/updatemodal/ HTTP/1.1" 200 7011
[23/May/2019 11:07:49] "GET /adres/15/updatemodal/ HTTP/1.1" 200 6955
[23/May/2019 11:07:49] "GET /adres/16/updatemodal/ HTTP/1.1" 200 7033
[23/May/2019 11:07:50] "GET /adres/13/updatemodal/ HTTP/1.1" 200 6958
[23/May/2019 11:07:53] "GET /adres/17/updatemodal/ HTTP/1.1" 200 7011
[23/May/2019 11:07:53] "GET /adres/16/updatemodal/ HTTP/1.1" 200 7033
[23/May/2019 11:07:53] "GET /adres/13/updatemodal/ HTTP/1.1" 200 6958
[23/May/2019 11:07:53] "GET /adres/15/updatemodal/ HTTP/1.1" 200 6955
[23/May/2019 11:07:53] "GET /adres/14/updatemodal/ HTTP/1.1" 200 7017
Похоже, что он «запоминает» все предыдущие URL, а затем просто добавляет один в список URL каждый раз, когда я нажимаю кнопку «dt-edit» вместо замены и отправляю только один запрос get.