Я пытаюсь сохранить значение ввода в переменной. На данный момент я хочу просто вставить входное значение в элемент span, чтобы я мог знать, что он работает. Однако я не могу заставить его работать в моем JSFIDDLE. Какие-либо предложения?
HTML:
<label>Advertising Budget:</label>
<input id="advertising" onchange="updateAdvertising(this.value)"> </input>
<span id="test">xxx</span>
Javascript:
function updateAdvertising(adv){
document.getElementById('test').innerText = adv;
}
JSFIDDLE: http://jsfiddle.net/6J4MN/
innerHTML более совместим, а также менять скрипку на голову вместо загрузки
Вот более аккуратное решение
window.onload=function() {
document.getElementById("advertising").onchange=function(){
document.getElementById('test').innerHTML = this.value;
}
}
Поскольку onchange требует размытия для запуска, используйте onkeyup для немедленного изменения:
window.onload=function() {
document.getElementById("advertising").onkeyup=function(){
document.getElementById('test').innerHTML = this.value;
}
}
Обратите внимание, что событие "OnChange" для текстового поля срабатывает, как только вы нажмете Enter или оставьте текстовое поле. Если вы измените событие, скажем, на клавиатуре, он обновит интервал после каждой буквы, которую вы наберете.
<script type='text/javascript'>//<![CDATA[
window.onload=function(){
function addEvent(element, evnt, funct){
if (element.attachEvent)
return element.attachEvent('on'+evnt, funct);
else
return element.addEventListener(evnt, funct, false);
};
addEvent(document.getElementById('advertising')
, 'change'
, function () { updateAdvertising(this.value); }
);
var updateAdvertising = function(adv){
document.getElementById('test').innerText = adv;
};
};
</script>