【发布时间】:2019-10-11 09:21:59
【问题描述】:
我的目标是让此模式中的“关闭”按钮保持之前按下“保存”按钮时的输入状态。当我单击“取消”按钮时,它已经保存了值并重置它们,但我的变量“已保存”已声明,即使我在函数中使用它,它也会向我显示此错误并且没有执行我想要的操作。
import {
getInput, setInput
} from '../../service/data'
let close = document.getElementById('advsettings_close');
let cancel = document.getElementById('advsettings_cancel');
let save = document.getElementById('advsettings_save');
const settingsForm = document.getElementById('advsettings_form');
const settingsSliders = settingsForm.querySelectorAll('input');
var saved = false;
cancel.addEventListener('click', function() {
cancelSettings();
});
save.addEventListener('click', function() {
saveSettings();
});
close.addEventListener('click', function() {
closeSettings();
});
settingsForm.addEventListener('submit', function (event){
event.preventDefault();
});
function cancelSettings(){
settingsSliders.forEach(function(input) {
input.value = 5;
console.log('Values canceled and reset');
});
saved = false;
}
function saveSettings(){
settingsSliders.forEach(function(input) {
if (input.type === 'range') {
setInput(input.name, input.value);
console.log('Save Value of ' + input.name + ':', input.value);
}
});
saved = true;
}
function closeSettings(){
settingsSliders.forEach(function(input) {
if (saved = true){
input.value = setInput(input.name, getInput(input.value));
} else if(saved = false) {
input.value = 5;
}
});
}
【问题讨论】:
标签: javascript function variables input slider