Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Очистить value поля input type=text (https://javascript.ru/forum/misc/45074-ochistit-value-polya-input-type%3Dtext.html)

izcian 13.02.2014 15:01

Цитата:

Сообщение от danik.js (Сообщение 297441)
Дык нафиг ты тогда итерируешься по всем childNodes. У тебя же есть айдишник - запроси его через getElementById и очищай (в зависимости от типа)
Абсолютно также как и текстовый инпут: element.value = "";

danik.js разве есть другой способ убрать checked="checked" нежели чем через childNodes? То же самое радио кнопки, селекты.
Я просто другого способа не нашел
<div id="check" style="display: block;">
        <div>Раздел-товары: </div>
    <input type="checkbox" value="Для головы" name="check[]">
          Для головы
    <input type="checkbox" checked="checked" value="Для пуза" name="check[]">
         Для пуза
    <input type="checkbox" value="Для рук" name="check[]">
        Для рук
    </div>

рони 13.02.2014 15:15

izcian,
<!DOCTYPE HTML>
<html>
  <head><meta charset="utf-8"></head>
  <body>
 <div id="check" style="display: block;">
        <div>Раздел-товары: </div>
    <input type="checkbox" value="Для головы" name="check[]">
          Для головы
    <input type="checkbox" checked="checked" value="Для пуза" name="check[]">
         Для пуза
    <input type="checkbox" value="Для рук" name="check[]">
        Для рук
    </div>

<script>

    var childNodes = document.querySelectorAll('#check :checked');
	for (var i=0; i<childNodes.length; i++) {
		   childNodes[i].checked = !1;
  		}

</script>
  </body>
</html>

danik.js 13.02.2014 15:43

Цитата:

Сообщение от Poznakomlus
Задам вопрос а в каких браузерах не работает прямое обращение по айдишнику?

В IE8 (может 9) проблемы с полями формы. Точно не помню. Помоему там поля мапятся в объект window по имени (name), а не id.

Цитата:

Сообщение от рони
document.querySelectorAll('#check :checked')

В IE8 такой селектор не работает.
Цитата:

Сообщение от рони
!1

Нахуй?

danik.js 13.02.2014 15:50

Цитата:

Сообщение от danik.js
В IE8 (может 9) проблемы с полями формы.

Не, не так. В любом IE поля формы не мапятся в window никак вообще.

Если только дать id форме, а полям имена, то тогда можно юзать как formId.fieldName (но надо избегать конфликтов со свойствами формы)

рони 13.02.2014 16:07

danik.js,
то есть надо false писать? или как

Vlasenko Fedor 13.02.2014 16:34

<div id="check" style="display: block;">
  <div>Раздел-товары:</div>
  <input type="checkbox" value="Для головы" name="check[]">Для головы
  <input type="checkbox" checked="checked" value="Для пуза" name="check[]">Для пуза
  <input type="checkbox" value="Для рук" name="check[]">Для рук</div>
<script>
  for (
    var els = check.getElementsByTagName('input'), 
    len = els.length; 
    len;
    els[--len].checked = 0
  );
</script>

тогда можно так. 0 -> false, 1 -> true

izcian 13.02.2014 17:42

Poznakomlus честно признаться как у Вас for работает...Для меня как китайская грамота))

skrudjmakdak 13.02.2014 18:03

мой вариант: ))
<div id="check" style="display: block;">
  <div>Раздел-товары:</div>
  <input type="checkbox" value="Для головы" name="check[]">Для головы
  <input type="checkbox" checked="checked" value="Для пуза" name="check[]">Для пуза
  <input type="checkbox" value="Для рук" name="check[]">Для рук</div>
<script>
Array.prototype.forEach.call(document.querySelectorAll('input'), function (a)
	{
	a.checked = 0;
	});
</script>

danik.js 13.02.2014 21:33

Цитата:

Сообщение от skrudjmakdak
checked = 0

Да вы че, наркоманы что-ли? Про true/false не слыхали?
Цитата:

Сообщение от skrudjmakdak
Array.prototype.forEach

(notice: IE9+ solution)

skrudjmakdak 13.02.2014 21:44

Цитата:

Сообщение от danik.js (Сообщение 297545)
Да вы че, наркоманы что-ли? Про true/false не слыхали?

я скопипастил))

Цитата:

Сообщение от danik.js (Сообщение 297545)
(notice: IE9+ solution)

в топку ие))


Часовой пояс GMT +3, время: 03:26.