From 3d95f8b522619fd043adbab38a6cf8b4a2fb8876 Mon Sep 17 00:00:00 2001 From: Julien Falque Date: Thu, 5 Jul 2018 10:05:27 +0200 Subject: [PATCH] fix: infinite "change" event triggering loop (#1326) --- js/autofill.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/js/autofill.js b/js/autofill.js index 2dfa92a1..199a31b8 100644 --- a/js/autofill.js +++ b/js/autofill.js @@ -45,7 +45,13 @@ const Autofill = ($ => { setInterval(() => { $("input[type!=checkbox]").each((index, element) => { let $element = $(element); - if ($element.val() && $element.val() !== $element.attr("value")) { + + let initialValue = $element.attr("value"); + if (initialValue === undefined) { + initialValue = ""; + } + + if ($element.val() && $element.val() !== initialValue) { $element.trigger("change"); } }); @@ -65,7 +71,13 @@ const Autofill = ($ => { focused = setInterval(() => { $inputs.each((index, element) => { let $element = $(element); - if ($element.val() !== $element.attr("value")) { + + let initialValue = $element.attr("value"); + if (initialValue === undefined) { + initialValue = ""; + } + + if ($element.val() !== initialValue) { $element.trigger("change"); } });