fix observeInput logic

This commit is contained in:
Bence Pőcze 2023-04-09 02:11:09 +02:00
parent a0fe77fe66
commit 6df63373ab
Signed by: bence
GPG Key ID: DC5BD6E95A333E6D

View File

@ -158,12 +158,17 @@ var RVR = {
document.getElementById('cover').style.visibility = 'hidden';
},
observeInput: function (input, buttonToToggle) {
observeInput: function (form, observedInputs) {
var anyChanged = false;
for (var i = 0; i < observedInputs.length; i++) {
var input = form.elements[observedInputs[i]];
if (input.defaultValue !== input.value) {
buttonToToggle.disabled = false;
} else {
buttonToToggle.disabled = true;
anyChanged = true;
}
}
form.elements.submit.disabled = !anyChanged;
},
observeInputsInForm: function (form, observedInputs) {
@ -174,12 +179,12 @@ var RVR = {
case 'INPUT':
case 'TEXTAREA':
input.oninput = function () {
RVR.observeInput(this, form.elements.submit);
RVR.observeInput(form, observedInputs);
};
break;
case 'SELECT':
input.onchange = function () {
RVR.observeInput(this, form.elements.submit);
RVR.observeInput(form, observedInputs);
};
break;
}