我正在尝试使用以下脚本代码。但它不起作用。我不知道是什么问题。我创建的x变量不包含任何内容。但仍然if条件不起作用。我已经尝试在警告框中打印x变量,它没有打印任何内容,这意味着它什么都不包含。但是,在它没有拿起条件不知道为什么。而且没有控制台错误。
<div id="test">
</div>
<script>
var x = document.getElementById("test").innerHTML;
if(x == '') {
document.getElementById("test").innerHTML = 'There are No friends posts yet my love!!';
}
</script>
答案 0 :(得分:7)
您的变量x不包含空字符串,但包含一些空格。尝试使用trim()函数删除这些符号:
if(x.trim() == ''){
...
}
答案 1 :(得分:0)
这会有效!
<script>
var x=document.getElementById("test").innerHTML;
if(x.trim() == ''){
document.getElementById("test").innerHTML='There are No friends posts yet my love!!';
}
</script>
答案 2 :(得分:0)
答案 3 :(得分:0)
问题是你的&#39; x&#39;变量不是空的。它包含两个返回字符。尝试删除open和close div语句之间的所有空格。这是更正后的代码:
<div id="test"></div>
<script>
var x=document.getElementById("test").innerHTML;
debugger;
if(x == ''){
document.getElementById("test").innerHTML='There are No friends posts yet my love!!';
}
</script>`
只需在div语句中添加或删除返回即可查看此工作或不起作用。
答案 4 :(得分:0)
您的代码有效。这一切都归结为你的html写法:
<div id="test">
// This is an unnecessary space that's what is making your condition fail
</div>
<script>
var x=document.getElementById("test").innerHTML;
if(x == ''){
document.getElementById("test").innerHTML='There are No friends posts yet my
love!!';
}
</script>
清理你的html:<div id="test"></div>
而且你不需要任何其他东西