Почему функция подчеркивания в JavaScript не работает?

function underline() {

  var text = document.getElementById("note_header").style.textDecoration;

  if (text == 'normal') {
    document.getElementById("note_header").style.textDecoration = 'Underline';
  } else {
    document.getElementById("note_header").style.textDecoration = 'normal';
  }
}
<input id = "btn" type = "button" value = "Underline" name = "btn" onclick = "underline()">

покажите свой html, а также укажите, как вы вызываете функцию

brk 10.04.2019 11:00

Голосующий против, не могли бы вы добавить комментарий для голосования против.

Jitesh Manglani 10.04.2019 11:00

используйте if (text == '') вместо if (text == 'normal')

Sourabh Somani 10.04.2019 11:00

<input id = "btn" type = "button" value = "Underline" name = "btn" onclick = "underline()">

Zaeem 10.04.2019 11:01

Я не вижу ни одного элемента с note_header в качестве идентификатора, не могли бы вы также включить его?

Thum Choon Tat 10.04.2019 11:03

note_header просто представляет текстовую область, в которой я набираю текст, который нужно подчеркнуть.

Zaeem 10.04.2019 11:04

Это работает так: jsfiddle.net/khrismuc/2hpxj58g (вам нужно будет использовать getComputedStyle(), а по умолчанию none, а не normal)

Chris G 10.04.2019 11:04

@ChrisG спасибо за ваш ответ.

Zaeem 10.04.2019 11:06
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
8
57
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Попробуй это

function underline(){
  var text = document.getElementById("note_header").style.textDecoration;
  if (text == 'none'){
    document.getElementById("note_header").style.textDecoration = 'Underline';
  } else{
    document.getElementById("note_header").style.textDecoration = 'none';
  }
}
<a href = "#" id = "note_header" style = "text-decoration:none;">This is anchor</a>
<input id = "btn" type = "button" value = "Underline" name = "btn" onclick = "underline()">
Ответ принят как подходящий

normal не является допустимым значением для text-decoration. Вместо этого используйте none.

function underline(){
  var text = document.getElementById("note_header").style.textDecoration;
  
  if (text !== 'underline'){
    document.getElementById("note_header").style.textDecoration = 'underline';
  } else{
    document.getElementById("note_header").style.textDecoration = 'none';
  }
}
<textarea id = "note_header"  rows = "3" cols = "15">
That's my note
</textarea><br/>
<input id = "btn" type = "button" value = "Underline" name = "btn" onclick = "underline()">

Другие вопросы по теме