Как напечатать значение в console.log на основе идентификатора элемента?

<input id="email" name="email" type="text" value="[email protected]">

Как мне получить значение id=email и распечатать его на моей консоли или в любом другом месте для целей тестирования?

Я пытался, но не получилось :(

script type="text/javascript">
    document.getElementById('email').innerText;
</script>

person iori    schedule 25.11.2014    source источник
comment
Вы хотите использовать .value, а не .innerText.   -  person hon2a    schedule 25.11.2014
comment
Имейте в виду, что не все браузеры поддерживают консоль, и некоторые из них выдадут ошибку, если вы попытаетесь использовать объект консоли stackoverflow.com/questions/14086675/   -  person Hoppe    schedule 25.11.2014
comment
Думаю, мне следует подумать об использовании .innerText   -  person iori    schedule 25.11.2014
comment
document.getElementById('email').value. Кстати, если вы выполняете интерактивную отладку с помощью chrome, от $0 до $4 запоминает последние пять элементов DOM, которые вы выбрали в инструментах разработчика, поэтому вы можете просто запустить $0.value в консоли.   -  person Sam Greenhalgh    schedule 25.11.2014
comment
@Hoppe, бессмысленная ссылка и обсуждение .. console.log предназначен для целей разработки .. кроме того, это простой полфилл   -  person Brett Caswell    schedule 25.11.2014


Ответы (8)


Есть два типа элементов

  1. Блокировать - к ним можно получить доступ с помощью - .innerHTML или .html() в jquery, таких как div span и т. д.
  2. Неблочные элементы — к ним можно получить доступ с помощью .value или .val() в jquery, например, типы ввода и т. д.

все, что вам нужно сделать, это

console.log($('#email').val())  //jquery

or 

console.log(document.getElementById('email').value); // javascript
person Ekansh Rastogi    schedule 25.11.2014

пытаться

console.log($('#email').val());
person Yosoyke    schedule 25.11.2014
comment
Но вам нужно будет добавить его к событию, например, при нажатии кнопки события изменения значения этого ввода, чтобы зарегистрировать его в консоли. - person Yosoyke; 25.11.2014
comment
Является ли alert и console.log единственными двумя способами распечатать значение на основе идентификатора, если элемент? Я ищу лучшую альтернативу. - person iori; 25.11.2014

Попробуйте оповещение...

http://jsfiddle.net/nemb666L/

var email = $("#email").val();
alert(email);
person EricBellDesigns    schedule 25.11.2014
comment
Я не уверен, почему люди вообще делают предупреждения ... просто используйте console.log ... гораздо проще тестировать код с помощью промежуточной консоли, разработчикам нужно лучше познакомиться с ней. - person Brett Caswell; 25.11.2014
comment
console.log подходит только для оперативной отладки и ведет себя по-разному в Firefox, Chrome и IE (в IE он будет отображать тот же текст, что и предупреждение). Я думаю, это зависит от ситуации... - person EricBellDesigns; 25.11.2014

это «распечатает» весь объект на консоли

console.log("input[id='email'] - %o", document.getElementById('email')); 
person Brett Caswell    schedule 25.11.2014

Без jQuery:

console.log(document.getElementById('email').value);
person xphong    schedule 25.11.2014
comment
Является ли alert и console.log единственными двумя способами распечатать значение на основе идентификатора, если элемент? Я ищу лучшую альтернативу. - person iori; 25.11.2014
comment
Если у вас есть другой div, вы можете вывести результат в этот div. Пример: document.getElementById('textDiv').innerHTML = document.getElementById('email').value - person xphong; 25.11.2014
comment
@evoque2015: Как лучше? Почему console.log() недостаточно для вас? - person six fingered man; 25.11.2014

Оно работает

console.log(email.value)
person chendianbuji    schedule 08.11.2016

В консоли инструментов разработчика Chrome отбросьте .value:

document.getElementById('#id')
person cjjenkinson    schedule 08.09.2017

Если email(ваш идентификатор) не определен, просто:

email.innerHTML

введите здесь описание изображения

person HumeNi    schedule 24.11.2016