Поле ввода не "забудет" первое значение, которое получает Firefox 20.0
У меня проблема с полем ввода, не забывая первый ввод, который он получает. Затем он возвращает его обратно, даже если содержимое должно было быть перезаписано новым вводом. Код, который я использую, прекрасно работает с IE8, проблема видна с Firefox 20.0.
Я работаю полностью в Javascript. Нет HTML вне тела.
Я использую это для настройки моего поля ввода:
addElementWithIdButNoNode("input","manimp","div42"); // add input box
addElementWithNodeAndId("button","Set","div42","setButton"); //add "set" button
document.getElementById("setButton").onclick=showIt;
"manimp" - это идентификатор, и ниже успешно фиксируется то, что вводится впервые как "theMainVar".
function showIt()
{
theMainVar=manimp.value;
theMainVar=parseFloat(theMainVar);
alert(theMainVar);
}
Проблема в том, что если вы запустите это снова в Firefox, вы можете ввести любое значение, которое вам нравится, но предупреждение вернется с тем, что вы ввели в первый раз.
Вы можете вручную отправить "manimp.value" во что-то еще в javascript, и оно действительно изменится, но затем останется в этом измененном значении.
Мне нужно "сбросить manimp, чтобы он мог принять новое значение из функции поля ввода"
Я осмотрелся и обнаружил множество функций reset() и clear(), но у меня ничего не работает.
То же самое происходит, если я меняю поле ввода для выпадающего списка.
Я новичок в Javascript, поэтому, если исправление кажется очевидным для вас, возможно, это так!
1 ответ
Попробуйте получить элемент 'manimp' внутри вашей функции, возможно, на значение ссылается, когда функция объявлена. Итак, внутри вашей функции использования
theMainVar = document.getElementById('manimp').value;