Почему я получаю эту неожиданную строковую ошибку? - PullRequest
0 голосов
/ 18 марта 2019

Я изучаю css + js + html rn и, делая простой скрипт всплывающих сообщений, я начал получать неожиданную строковую ошибку в следующем скрипте:

function myFunction() {
  var xbg = prompt("Please enter your name!", "Henry Phillips");
  if (person === null || person == "")
  {
    txt= "Enter your name in the field.";
  } else {
    txt "Hello" + xbg + "! How are you today?"
  }
  document.getElementById("demo").innerHTML = txt;
}

Как говорит консоль, здесь конкретно указана ошибка строки: линия

Ответы [ 3 ]

2 голосов
/ 18 марта 2019

В вашем скрипте есть ошибки.

Сначала вы забудете = в остальном.

txt = "Hello " + xbg + "! How are you today?"
----^

Если условие не проверяет правильное имя переменной, вы можете заменить person на xbg.

if (xbg === null || xbg == "")
// or shorter
if (xbg && xbg.trim())

И, наконец, вы не вызовете свой скрипт в другой раз, если пользователь не введет это имя. Вы можете использовать setTimeout, чтобы дать пользователю некоторое время для чтения сообщения перед открытием запроса в другой раз.

setTimeout(myFunction, 500);

См. Полный фиксированный код ниже

function myFunction() {
  var xbg = prompt("Please enter your name!", "");
  if (xbg === null || xbg == "")
  {
    txt = "Enter your name in the field.";
    setTimeout(myFunction, 500);
  } else {
    txt= "Hello " + xbg + "! How are you today?"
  }
  document.getElementById("demo").innerHTML = txt;
}

myFunction();
<span id="demo"></span>
1 голос
/ 18 марта 2019

function myFunction() {
  var person = prompt("Please enter your name!", "Put Your Name");
  if (person.trim()) {
    txt = "Hello, " + person + "! How are you today?"
  } else {
    txt = "Enter your name in the field.";
  }

  document.getElementById("demo").innerHTML = txt;
}

myFunction();
<div id="demo"></div>

Вы можете найти отредактированный скрипт здесь.

0 голосов
/ 18 марта 2019

так что в основном у вас есть опечатка здесь: изменить персона с xbg

function myFunction() {
  var xbg = prompt("Please enter your name!", "Henry Phillips");
  if (xbg === null || xbg == "")
  {
    txt= "Enter your name in the field.";
  } else {
    txt ="Hello" + xbg + "! How are you today?"
  }
  document.getElementById("demo").innerHTML = txt;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...