Javascript 我不知道';我不知道如何正确关联按钮
你好,我是一个新手,我不知道做这件事需要知道的所有事情。我需要按钮与类型对应的票务销售关联,我希望在达到可更改的销售数量后终止。到目前为止,我已经为我所知道的所有事情编写了代码,如果有什么东西被遗漏了,这可能是因为我是一个不知道自己在做什么的白痴Javascript 我不知道';我不知道如何正确关联按钮,javascript,Javascript,你好,我是一个新手,我不知道做这件事需要知道的所有事情。我需要按钮与类型对应的票务销售关联,我希望在达到可更改的销售数量后终止。到目前为止,我已经为我所知道的所有事情编写了代码,如果有什么东西被遗漏了,这可能是因为我是一个不知道自己在做什么的白痴 <div align="center"> <div>Hello, and welcome to the Porpoise Pond Virtual Ticket Booth. We are running a speci
<div align="center">
<div>Hello, and welcome to the Porpoise Pond Virtual Ticket Booth. We are running a special so toddlers get in for free!</div>
<div>This menu is here to simplify ticket sales. It will automatically stop when the ticket sales when the seats are sold out</div>
<div>Be aware that the maxium amount of ticket that can be purchased in one transaction is 10!</div>
<div>Please press the button with the type of ticket you wish to purchase to start ordering your tickets now.</div>
<button onclick="Calculate();">Toddler Ticket</button>
<button onclick="Calculate();">Junior Ticket</button>
<button onclick="Calculate();">Adult Ticket</button>
<div id='msg'></div>
</head>
<body>
<script type="text/javascript">
// Program name: Ticket Booth
// Purpose: To do a transaction
// Author: Ephraim Vickers
// Date last modified: Today
// Variables
var MAX_SEAT_COUNT = 10 //Named constant
var amountTicket //Amount of tickets bought
var grossProfit
//Ticket prices
var adulTicket = 0
var junTicket = 0
var todTicket = 0
var totalSales = 0 // adulTicket + junTicket
//Seats by class
var adulNum = 0 // number of tickets bought
var junNum = 0
var todNum = 0
var extraNum = 0 //Ticket bought over maximum
function parseFloat(amountTicket) {
if (amountTicket >= MAX_SEAT_COUNT) {
extraNum = amountTicket - MAX_SEAT_COUNT;
document.getElementById('msg').innerHTML = "Tickets have now sold out thank you for purchasing." // important to stop after limit
//end loop and display all data here like shown below remember to line up columns
//Ticket sale Report <current date>
// SEAT CAPACITY EXTRAS TOTAL SOLD
// MAX_SEAT_COUNT extraNum amountTicket
// TODDLERS JUNIORS ADULTS
// todNum junNum adulNum
//Gross Profit for today was grossProfit
}else if (amountTicket > 10) {
document.getElementById('msg').innerHTML = "The maximum number of tickets that can be done in one transaction is 10"
}else {
amountTicket = prompt("Valued customer, please enter the number of tickets you would like to purchase.");
parseFloat(amountTicket);
}
return;
}
function Calculate() {
//set zeroes for all values
adulTicket = 0
junTicket = 0
todTicket = 0
amountTicket = 0
totalSales = 0
adulNum = 0
junNum = 0
todNUm = 0
extraNum = 0
grossProfit = 0
//get user input
amountTicket = prompt("Valued customer, please enter the number of tickets you would like to purchase.");
parseFloat(amountTicket);
grossProfit = (adulTicket * adultNum) + (junTicket * junNum)
}
</script>
您好,欢迎来到海豚池虚拟售票亭。我们正在举办一个特别活动,让幼儿免费入场!
此菜单用于简化门票销售。当票卖完时,自动停止售票
请注意,在一次交易中可购买的最大票证金额为10!
请按您希望购买的车票类型按钮,现在开始订购车票。
学步儿童票
少年票
成人票
//节目名称:售票亭
//目的:进行交易
//作者:Ephraim Vickers
//上次修改日期:今天
//变数
var MAX\u SEAT\u COUNT=10//命名常数
var amountTicket//购票金额
格罗斯普罗菲特酒店
//票价
var adulTicket=0
var junTicket=0
var todTicket=0
var totalSales=0//adulTicket+junTicket
//按班级划分的座位
var adulNum=0//购买的门票数量
var junNum=0
var todNum=0
var extraNum=0//购票超过最大值
函数parseFloat(amountTicket){
如果(票证数量>=最大座位数){
extraNum=数量票证-最大座位数;
document.getElementById('msg').innerHTML=“票现在已经卖完了,谢谢您的购买。”//在限价后停止很重要
//结束循环并在此处显示所有数据,如下图所示。记住将列对齐
//售票报告
//座位容量额外销售总额
//最大座位数额外票数
//幼儿、少年、成人
//大黄鱼
//今天的毛利润是毛利润
}否则如果(票证数量>10){
document.getElementById('msg').innerHTML=“一个事务中可以完成的最大票证数为10”
}否则{
amountTicket=提示(“尊贵的客户,请输入您想要购买的票数。”);
总票数(总票数);
}
返回;
}
函数计算(){
//为所有值设置零
adulTicket=0
junTicket=0
todTicket=0
数量票证=0
总销售额=0
成人=0
junNum=0
todNUm=0
额外数量=0
grossProfit=0
//获取用户输入
amountTicket=提示(“尊贵的客户,请输入您想要购买的票数。”);
总票数(总票数);
grossProfit=(成人票*成人票)+(儿童票*儿童票)
}
您可以将id变量传递给计算函数,如:
<button onclick="Calculate(0);">Toddler Ticket</button>
<button onclick="Calculate(1);">Junior Ticket</button>
<button onclick="Calculate(2);">Adult Ticket</button>
我希望这对您有用。在JS中的每一行代码末尾添加分号(
;
)是一种很好的做法。(即使不需要)为什么要覆盖parseFloat
?选择另一个函数名。您可以使用context
参数将this
传递到Calculate(this)
,并可以获取context.value
内部计算或传递某个内容以了解它是哪个按钮。很抱歉,您在最后一部分失去了我。我正在努力学习,但到目前为止,我所学到的都是来自这个论坛和W3学校的人,所以我不明白我使用的一些东西是什么,我只是知道其他人使用它们,你能解释一下你做了什么吗?我不知道“case”是什么,也不知道如何编码。我在每次调用Calculate()时都加上一个不同的int。如果你看我的代码,你会发现第一个按钮(学步儿童票)在单击事件时调用Calculate(0),第二个按钮调用Calculate(1)等。然后在你的Calculate函数中,你可以得到这个数字,并确定按下了什么按钮(开关)幼儿0分,幼儿1分,成人2分谢谢。我很抱歉,但我可以请您对其中一个进行编码,或者引用一个显示正在使用的示例的地方吗?您还知道如何用javascript创建表吗
function Calculate(id) {
//set zeroes for all values
adulTicket = 0
junTicket = 0
todTicket = 0
amountTicket = 0
totalSales = 0
adulNum = 0
junNum = 0
todNUm = 0
extraNum = 0
grossProfit = 0
switch(id){
case 0:
//code for toddler
break;
case 1:
//code for junior
break;
case 2:
// code for adult
break;
}
//get user input
amountTicket = prompt("Valued customer, please enter the number of tickets you would like to purchase.");
parseFloat(amountTicket);
grossProfit = (adulTicket * adultNum) + (junTicket * junNum)
}