|
Очистить value поля input type=text
Мне нужно очистить value в поле input type="text". Я сделал так, не знаю правильно?;) (код ниже).
<!DOCTYPE HTML> <html> <head><meta charset="utf-8"></head> <body> <div id="text" > <input type="text" value="2" maxlength="150" size="70" name="alias"> </div> <br/> <div id="text2" > <div> <input type="text" value="222" maxlength="150" size="70" name="alias"> </div> <div> <input type="text" value="333" maxlength="150" size="70" name="alias2"> </div> </div> <script> var childNodes = document.getElementById("text2").childNodes; for (var i=0; i<childNodes.length; i++) { if (childNodes[i].type == 'text') { childNodes[i].value = ''; //alert(childNodes[i].type); } } </script> </body> </html> Фишка в том, там где div id="text" value очищается. Там где div id="text2" уже нет. Подскажите пожалуйста, как можно в id="text2" так же очищать value? |
Цитата:
var childNodes = document.getElementById("text2").getElementsByTagName('input');// или так var childNodes = document.querySelectorAll('#text2 input');//или так |
Упс, даже не ожидал, кажется нашел решение, вроде работает...Прошу гуру js взглянуть на мое творчество:blink: , если не сложно может какие есть замечания?
if (childNodes[i].type == 'text') { childNodes[i].value = ''; } else if (childNodes[i].tagName == 'DIV') { var new_childNodes = childNodes[i].childNodes; for(var b=0; b<new_childNodes.length; b++) { if (new_childNodes[b].type) { if (new_childNodes[b].type == 'text') { if (new_childNodes[b].value != '') new_childNodes[b].value = ''; } } } } |
Если поля изначально пустые, далее заполняются юзером и нужно их очистить, то все проще:
<form id="form"> <input type="text" name="alias" /> <input type="text" name="alias2" /> <button type="button" onclick="form.reset()">Очистить</button> </form> <script> form.alias.value = form.alias2.value = 'abc'; </script> |
Цитата:
|
izcian, дапофиг. Ты не доволен querySelectorAll ? Почему?
А есть еще form.elements - коллекция всех контролов (правда там и кнопки тоже) - тоже удобно. Правда вроде не кроссбраузерно... |
Цитата:
|
Цитата:
Не совсем по теме, подскажите пожалуйста а как очистить textarea, а то че-то ничего не нашел в инете? |
Цитата:
Цитата:
|
Цитата:
id.value = ""; |
Часовой пояс GMT +3, время: 09:32. |
|