if/else - if 字符串不显示
If/Else - If String Not Displaying?
我有一个输入字符串("A Name")的提示。关于我if/else
发言if
部分。当执行完成并输入字符串时,它会执行它应该执行的操作。
但是,在实际语句中if(x === null)
单击cancel
按钮时不会发生任何情况。我认为这是因为"y"变量下的内容。
JAVASCRIPT:
<script>
var x = prompt('Enter a name');
var y = x.charAt(0).toUpperCase() + x.slice(1).toLowerCase();
if(x === null){
document.getElementById("name_placement").innerHTML = "Welcome to My Site!";
}
else
{
document.getElementById("name_placement").innerHTML = "Hello " + y + ", Welcome To My Site";
}
您的问题是,当x
具有值时 null
,正如您对取消按钮情况所期望的那样,语句
var y = x.charAt(0).toUpperCase() + x.slice(1).toLowerCase();
将引发异常 - 您不能在 null
上调用这些方法。该异常会破坏脚本并阻止其显示任何内容。检查错误控制台。
你必须把它移到你的 else 块中,只有在x
是一个字符串时才执行它:
var x = prompt('Enter a name');
if (x === null) {
document.getElementById("name_placement").innerHTML = "Welcome to My Site!";
} else {
var y = x.charAt(0).toUpperCase() + x.slice(1).toLowerCase();
document.getElementById("name_placement").innerHTML = "Hello " + y + ", Welcome To My Site";
}
你可以这样做
var x = prompt('Enter a name');
var y = (x) ? x.charAt(0).toUpperCase() + x.slice(1).toLowerCase() : '';
alert(x === null ? "Welcome to My Site!" : "Hello " + y + ", Welcome To My Site");
如果您还希望它处理空字符串,例如如果有人只按 OK 而不输入任何字符,请将x === true
更改为!x
var x = prompt('Enter a name');
var y = (x) ? x.charAt(0).toUpperCase() + x.slice(1).toLowerCase() : '';
alert(!x ? "Welcome to My Site!" : "Hello " + y + ", Welcome To My Site");
如果您不输入任何内容prompt
将返回一个空字符串''
,如果您单击取消按钮x
将等于null
,因此在这两种情况下,您都会得到 falsy 值,您可以使用 if(x)
而不是 if(x === null)
来处理该值。
同时操作块if(x)
x
值。
当用户按"取消"时x
为空
当用户按"确定"时x
为空字符串
问题是您无法设置y
何时x
null
var x = prompt('Enter a name');
if(x===null || x==='' )
{
document.getElementById("name_placement").innerHTML = "Welcome to My Site!";
}
else
{
var y = x.charAt(0).toUpperCase() + x.slice(1).toLowerCase();
document.getElementById("name_placement").innerHTML = "Hello " + y + ", Welcome To My Site";
}
<div id="name_placement"></div>
相关文章:
- 如何应用带过滤器的ng if来过滤记录,并在同一页面中显示两个不同的视图
- jQuery/Javascript foreach If/Else |如果为空(不执行任何操作)Else(显示forea
- 我应该如何应用if-else条件来向具有不同用户角色的人显示不同的菜单
- 在if/else语句中显示DIV
- JavaScript if else 语句来显示 html 标签
- 什么'这是一种基于if/if-else语句显示popover的简单方法
- 使用javascript中的if和else语句来显示图像(如果图像不存在,则显示其他图像)
- 如何在使用$http缓存时重新触发ng-if/ng显示动画
- javascript setinterval使用if条件显示图像
- 隐藏/显示li's列表以及if语句和document.write
- If语句显示图像
- 随机化并在页面加载时显示给定数量的 if 元素
- 如何在 Javascript 中的 if 语句的弹出屏幕中显示文本
- AngularJS:if 语句,用于显示一个图像与另一个图像
- 尝试获取 if 语句以在人员未登录时显示登录按钮,在登录时显示注销按钮
- 角度基础选项卡显示错误的内容和带有 ng-if 的活动选项卡
- ng-show 和 ng-if 无法显示内容
- jQuery 隐藏/显示在 if/else 语句中不起作用
- 在文本框中显示 if 语句的结果
- Jquery-else if显示文本