Проверьте, не содержит ли значение document.GetElementById (""). Значение NULL. - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь проверить условие ниже,

var param= document.getElementById("txtbox").value;
if(param!== null  || param.length!==0 || param !=="" || param!==undefined)
{//do something}

, но даже если параметр равен нулю, он входит в блок if. У кого-нибудь есть идеи по этому поводу?

Ответы [ 4 ]

0 голосов
/ 10 февраля 2020

К сожалению, логи вашего кода c неверны.

Например, если параметр равен нулю, параметр! == "" имеет значение true. Поскольку null отличается "" (пустая строка) и т. Д. c.

Вы можете проверить только переменную param.

Например:

var param= document.getElementById("txtbox").value;
if(param)
{//do something}

Но также document.getElementById ("txtbox") может быть нулевым или неопределенным, поэтому вы должны проверить его.

Например:

var txtBox= document.getElementById("txtbox");
    if(txtBox&&txtBox.value)
    {//do something}
0 голосов
/ 10 февраля 2020

Вы можете null проверить элемент как,

function checkNull() {
    var param= document.getElementById("txtbox").value;
    if(!param)
      console.log("Null check passed")    
    else
      console.log(param+" Entered by user")
  }
<input type="text" id="txtbox" name="txtbox">
<button onclick="checkNull()">Null checker</button>
0 голосов
/ 10 февраля 2020

document.getElementById вернет вам один объект, представляющий первый элемент с требуемым идентификатором, и вернет null, если элемент не найден sou:

if (! Param) {}

должно хватить

0 голосов
/ 10 февраля 2020

Что по этому поводу:

var param= document.getElementById("txtbox");
if(!param && !param.value)
{
    //do something
}
...