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)

    }