Javascript 检查document.GetElementById(";).value是否不包含null

Javascript 检查document.GetElementById(";).value是否不包含null,javascript,getelementbyid,null-check,Javascript,Getelementbyid,Null Check,我正在检查以下情况 var param= document.getElementById("txtbox").value; if(param!== null || param.length!==0 || param !=="" || param!==undefined) {//do something} 但即使param为null,它也会进入if块。有人对此有想法吗?这个怎么样: var param= document.getElementById("txtbox"); if(!param

我正在检查以下情况

var param= document.getElementById("txtbox").value;
if(param!== null  || param.length!==0 || param !=="" || param!==undefined)
{//do something}
但即使param为null,它也会进入if块。有人对此有想法吗?

这个怎么样:

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

您可以
null
检查如下元素:

函数checkNull(){
var param=document.getElementById(“txtbox”).value;
如果(!param)
log(“通过空检查”)
其他的
console.log(参数+“由用户输入”)
}


Null checker
document.getElementById将返回单个对象,该对象表示具有所需ID的第一个元素,如果没有找到元素,则返回Null:

如果(!param){}


应该足够了

不幸的是,您的代码逻辑不正确

例如,如果param为null,则param==”“是真的。因为null不同于“”(空字符串)等

您只能检查param变量

例如:

var param= document.getElementById("txtbox").value;
if(param)
{//do something}
var txtBox= document.getElementById("txtbox");
    if(txtBox&&txtBox.value)
    {//do something}
但是document.getElementById(“txtbox”)也可能为null或未定义,因此必须选中它

例如:

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

只需检查
param!=''仅此而已,其他检查都没有意义。即使是检查。。如果阻塞,它仍然会进入。。但是它不应该知道什么元素是
#txtbox
?document.getElementById(“txtbox”).value
不应该是
null
。我想不出任何情况下它都是
未定义的
(因为元素根本没有
属性)或字符串。您可能需要提供一个@Teemu-Custom属性,但不能提供一个自定义属性(这将是无效的HTML并生成一个字符串)。如果(!!param&&!!param.value)
,你不想看到oposite吗!如果元素不存在,则传递param。然后它尝试检查som falsy value的值,这将触发一个错误。@faransaleem:同意salahakbari的说法,你的测试顺序真的很奇怪,你不能测试第一个param.length==0,然后是param=="". 首先检查param是否存在,然后检查它的length属性(这里的逻辑)如果dcument.getElementById(“txtbox”)为null,您将得到一个错误null.value….@EugenSunic我的答案是针对有问题的代码,它没有检查DOM元素