2013-02-21 3 views
2

У меня есть тег ввода HTML, и я хочу изменить его значение при нажатии на кнопку, все перед отправкой всей формы.установить значение входного тега на другое значение с помощью javascript

Я пытаюсь использовать getElementById (idOfInput) .value = "значение, которое я хочу установить для него", но это не работает.

Отъезд jsfiddle здесь: http://jsfiddle.net/dchaddock/83NZu/1/

<input id="resetTesting" value="Testing" /> 
<button type="button" onclck="resetInput();">Testing</button> 

function resetInput() { 
    document.getElementById("resetTesting").value = "I'm reset!"; 
} 

Спасибо!

+0

ли 'onclck' атрибут вашей кнопки опечатка на этой публикации, или она существует на вашей странице? Если последнее, это по крайней мере часть вашей проблемы. – JAAulde

ответ

0

Вот jsFiddle Link

http://jsfiddle.net/83NZu/3/

<input id="resetTesting" value="Testing" /> 
<button type="button" id="btnSubmit" >Testing</button> 

    $(function(){ 
     $("#btnSubmit").click(function(){ 
      $("#resetTesting").val('test'); // Set the Value 
      alert($("#resetTesting").val()); // Get the Value 
     }) 
    }) 
+3

OP никогда ничего не говорил об использовании jQuery. – Blender

+2

@ user2063626, где вы когда-либо видели, что OP упоминает, что jQuery доступен или используется (или что-то, что он даже распознает)? – JAAulde

+2

Infact там даже тег jQuery, заданный на вопрос – asifsid88

0

Ваша функция не определена Whe n ваш javascript-компилятор попадает в ваш onclick = "resetInput();". Поместите скрипт перед html, и вам должно быть хорошо идти.

<script type="text/javascript"> 
    function resetInput() { 

    document.getElementById("resetTesting").value = "I'm reset!"; 
} 
</script> 
<input id="resetTesting" value="Testing" /> 
<button type="button" onClick="resetInput();">Testing</button> 

http://jsfiddle.net/83NZu/6/

также ... как и все остальные упоминается ... его OnClick;)

edit 

Это неправильно. Проблема с оригинальным jsfiddle была и опечаткой и установка OnLoad против не плёнки (голова) FWIW

+0

Это не проблема. Инлайн-обработчик событий совпадает с телом функции.Значение 'onclick' не запускается до щелчка, после чего определяется' resetInput' (даже если вы щелкнули в течение секунды разделения, он не был определен, последующие клики были бы точными). Ваш пример работает, потому что вы исправили реальную проблему атрибута typo'd. – JAAulde

+0

Ты абсолютно прав. Спасибо за урок. Проблема с исходным сообщением jsfiddle заключалась в том, что у них была настройка рамки как onLoad ... не уверен, почему это нарушило jsfiddle, fwiw – bluetoft

0

проблемой является вариантом по умолчанию «OnLoad» и ошибка по буквам onclck:

«OnLoad» опция означает: обернуть код, он будет работать в окне событии загрузки

HTML код:

<input id="resetTesting" value="Testing" /> 
<button id="btn" type="button">Testing</button> 

JavaScript код:

document.getElementById("btn").onclick = function(){ 
    document.getElementById("resetTesting").value="I'm reset"; 
} 

http://jsfiddle.net/83NZu/8/

или выбрать опцию "не обертка (голова)", это означает: не обернуть код JavaScript, поместите его в <head> разделе

http://jsfiddle.net/83NZu/7/

Смежные вопросы