Javascript:为输入字母指定特定值
我无法将输入指定为特定值。例如,当用户通过TicketType提示符输入字母时,我希望将该字母转换为数字。假设他们输入“B”作为他们的票证类型,我想把“B”转换成50,这样我就可以计算出总成本。目前TotalPayment只显示NaN,我很困惑 这是我的JavaScript代码:Javascript:为输入字母指定特定值,javascript,Javascript,我无法将输入指定为特定值。例如,当用户通过TicketType提示符输入字母时,我希望将该字母转换为数字。假设他们输入“B”作为他们的票证类型,我想把“B”转换成50,这样我就可以计算出总成本。目前TotalPayment只显示NaN,我很困惑 这是我的JavaScript代码: function ticket() { var TicketType; TicketType = prompt("Please enter the type of ticket you require
function ticket() {
var TicketType;
TicketType = prompt("Please enter the type of ticket you require!");
document.write("<br>");
var TicketQty;
TicketQty = prompt("Please enter the number of tickets you require!");
TicketQty = parseInt(TicketQty);
document.write("Number of Tickets:" + TicketQty);
document.write("<br>");
var TotalPayment =(TicketPrice) * (TicketQty);
document.write("Total Payment is:" + TotalPayment);
var TicketPrice;
TicketPrice = parseInt(TicketPrice);
if (TicketType == A) {
TicketPrice == 100;
}
else if (TicketType == B) {
TicketPrice == 75;
}
else if (TicketType == C){
TicketPrice == 50;
}
else {
document.write("Invalid Ticket Type");
}
}
功能票证(){
var-TicketType;
TicketType=提示(“请输入您需要的票证类型!”);
文件。写(“
”);
var-TicketQty;
TicketQty=prompt(“请输入您需要的票数!”);
TicketQty=parseInt(TicketQty);
文件。填写(“票数:+TicketQty”);
文件。写(“
”);
var TotalPayment=(票证价格)*(票证价格);
文件。填写(“付款总额为:“+TotalPayment”);
var报价;
TicketPrice=parseInt(TicketPrice);
如果(票证类型==A){
票务价格==100;
}
否则如果(票证类型==B){
票务价格=75;
}
else if(票证类型==C){
票务价格==50;
}
否则{
文件。写入(“无效票证类型”);
}
}
这是我的HTML代码:
<html>
<title>Ticket</title>
<h1>Ticket</h1>
<script src="test.js"> </script>
<script>calculate()</script>
</body>
票
票
计算()
您的字符串比较完全错误。我的回答仅限于此,因为这正是你所问的
if (TicketType == A) {
需要:
if (TicketType === "A") {
此外,您必须清楚赋值“=”与比较“=”
整个部分应该更像这样:
if (TicketType === "A") {
TicketPrice = 100;
} else if (TicketType === "B") {
TicketPrice = 75;
} else if (TicketType === "C")
TicketPrice = 50;
else {
document.write("Invalid Ticket Type");
}
当您有一个链接if-then-elseif时,请查看switch语句
您的代码还有其他问题。进行了一些修复和改进 您需要改变两件事: 1:字符串比较
if (TicketType == A)
到
2:分配错误
TicketPrice == 100
到
请尝试以下操作:
var-TicketType;
var-TicketQty;
var报价;
函数calculatecket(){
TicketType=提示(“请输入您需要的票证类型!”);
文件。写(“
”);
TicketQty=prompt(“请输入您需要的票数!”);
testType();
}
计算基特();
函数testType(){
如果(票证类型=='A'| |票证类型=='B'| |票证类型=='C'){
如果(票证类型=='A'){
票券价格=100;
}否则如果(票证类型=='B'){
票券价格=75;
}否则如果(TicketType=='C'){
票务价格=50;
}
TicketQty=parseInt(TicketQty);
document.body.innerHTML+='';
document.getElementById('text1')。innerHTML='总付款为:'+TicketQty;
文件。写(“
”);
var TotalPayment=(票证价格)*(票证价格);
document.body.innerHTML+='';
document.getElementById('text2')。innerHTML='总付款为:'+总付款;
TicketPrice=parseInt(TicketPrice);
}
否则{
if(document.getElementById('text1')!=null){
document.getElementById('text1')。innerHTML='';
}
if(document.getElementById('text2')!=null){
document.getElementById('text2')。innerHTML='';
}
文件。写入(“无效票证类型”);
}
}
非常感谢!!还有一个问题:如果页面显示无效的票证类型,我可以让它只显示无效的票证类型而不显示其他内容吗?嗨,米特兰迪尔,现在试试这个片段。我更改了密码。如果有什么问题,请告诉我。
TicketPrice == 100
TicketPrice = 100