Я упрощаю свою задачу до минимума, потому что на самом деле мой код очень длинный и сложный для объяснения.
У меня есть два поля ввода текста, в первое поле я могу вставить серию значений, аВторое поле получает значения первого поля и сравнивает их с теми, которые у него уже есть.если есть двойные значения, функция предупреждает, и пользователь может выбрать, перезаписать их или удалить их, в противном случае добавляется значение.
Я хочу сделать это через цикл for.
function prova() {
var stringa_valoredainserire = document.getElementById("valoredainserire").value;
var stringa_valoredacambiare = document.getElementById("valoredacambiare").value;
var stringa_valoredacambiare2 = document.getElementById("valoredacambiare");
mioarray = stringa_valoredainserire.split("; ");
var i, len, text;
//inizio ciclo for
for (i = 0, len = mioarray.length, text = ""; i < len; i++) {
if (stringa_valoredacambiare.indexOf(mioarray[i]) !== -1) {
if (confirm('il valore ' + mioarray[i] + ' esiste, ok per sovrascriverlo, annulla per cancellarlo')) {
stringa_valoredacambiare2.value = stringa_valoredacambiare.replace(mioarray[i], mioarray[i]);
} else {
stringa_valoredacambiare2.value = stringa_valoredacambiare.replace(mioarray[i] + '; ', '');
}
} else {
stringa_valoredacambiare2.value = stringa_valoredacambiare2.value + mioarray[i] + '; ';
}
}
}
<input id="valoredainserire" value="" type="text">
<input id="valoredacambiare" value="pere; cipolle; mele; " type="text" readonly>
<input type="button" onclick="prova();" value="Prova">
проблема заключается в том, что если значения, которые нужно ввести в первое поле ввода, равны значениям второго, то если я хочу их удалить,Функция удаляет только последнюю, потому что это последняя переменная, которая хранит ее в памяти.
как я могу исправить эту ситуацию?какая-то идея?Заранее спасибо.