2017-05-08 72 views
0

對於2個警報(它們是相同的)「警報(」您訂購的比薩餅是:「+ fullOrder)」他們實際上並沒有正常運行。一切都運行良好,直到我得到警報,然後他們只是不出現。 (他們與陣列有關,所以我認爲這可能與此有關。)我的警示框不起作用

那麼,有沒有人知道我做錯了什麼?我對於需要做什麼有一個微弱的想法,知道如何去做。在功能上爲了()VAR全階需要進入另一個函數計算()的局部變量。請幫助!

<html> 
 
<script> 
 

 
//Global variables 
 
var totalNumber = 0; // Total number of pizzas ordered 
 
var pizzaPrice = 9.50; // price of plain pizza 
 
var pizzaPriceGourmet = 15.50; //price of gourmet pizza 
 
var orderTotalPrice = 0; // total cost of order 
 
var pizzaDeliveryPrice = 5; // price for pizza delivery 
 
var FullOrder = 0; // number of pizza's ordered 
 
var customerName = prompt("Please enter your name.") //prompt to get the customers name 
 
var customerNumber = prompt("Please enter your phone number.") //prompt to get the customers number 
 
{ 
 
if (isNaN(customerNumber) || customerNumber < 8400000 || customerNumber > 999999999) {   // Checks if customerNumber is greater than 9999999 
 
     alert("Please enter a 7-digit telephone number between 8600000 - 9999999 Select the 'cancel order' button and enter a valid telephone number!"); \t \t \t // asks customer to enter a valid telephone number 
 
} else \t 
 
\t alert("Lets continue!"); \t \t \t // Continues to main website 
 
} 
 

 

 
order();//call order 
 

 
calculate(totalGourmet,totalPlain);// while calling 
 
    
 
function order() 
 
{ 
 
    var pizza = new Array() 
 
    pizza[0] = document.form.hawaiian.value    //allocates type of pizza in array 
 
    pizza[0] = Number(pizza[0])       //converts to number value 
 
    pizza[1] = document.form.cheese.value     //allocates type of pizza in array    
 
    pizza[1] = Number(pizza[1])       //converts to number value 
 
    pizza[2] = document.form.veggie.value    //allocates type of pizza in array 
 
    pizza[2] = Number(pizza[2])       //converts to number value 
 
    pizza[3] = document.form.supreme.value    //allocates type of pizza in array 
 
    pizza[3] = Number(pizza[3])       //converts to number value 
 
    pizza[4] = document.form.pepperoni.value    //allocates type of pizza in array 
 
    pizza[4] = Number(pizza[4])       //converts to number value 
 
    pizza[5] = document.form.meatlovers.value    //allocates type of pizza in array 
 
    pizza[5] = Number(pizza[5])       //converts to number value 
 
    pizza[6] = document.form.chicken.value    //allocates type of pizza in array 
 
    pizza[6] = Number(pizza[6])       //converts to number value 
 
    pizza[7] = document.form.prawn.value    //allocates type of pizza in array 
 
    pizza[7] = Number(pizza[7])       //converts to number value 
 

 
    totalPlain = pizza[0] + pizza[1] + pizza[2] + pizza[3] + pizza[4]; 
 
    totalGourmet = pizza[5] + pizza[6] + pizza[7]; 
 

 
    var totalNumber = totalGourmet + totalPlain 
 

 
    var fullOrder = alert("You have ordered: " + "\n" +  <----- I NEED THIS 
 
     "Hawaiian Pizza ($9.50): " + pizza [0] + "\n" + 
 
     "Cheese Pizza ($9.50): " + pizza [1] + "\n" + 
 
     "Veggie Pizza ($9.50): " + pizza [2] + "\n" + 
 
     "Supreme Pizza ($9.50): " + pizza [3] + "\n" + 
 
     "Pepperoni Pizza ($9.50): " + pizza [4] + "\n" + 
 
     "Meat-Lovers Pizza ($15.50): " + pizza [5] + "\n" + 
 
     "Chicken Pizza ($15.50): " + pizza [6] + "\n" + 
 
     "Prawn Pizza ($15.50): " + pizza [7]); 
 
\t \t 
 

 
    if (totalNumber >12) {   // Limit for total amount of Pizzas ordered 
 
     alert("There is a limit of 12 pizzas per order. - PRESS 'Prevent this page from creating  additional dialogs' THEN PRESS 'cancel order' AND THEN RE-ORDER! - Current total is: " +totalNumber); 
 
    } else 
 
     alert("Total number of pizzas ordered: " + totalNumber); //Total amount of pizzas ordered 
 
    calculate(totalGourmet,totalPlain) //Begins calculation function 
 
} 
 

 

 
function calculate(totalGourmet,totalPlain) //Function for the cost of the order 
 
{ 
 
    orderTotalPrice = (totalPlain*pizzaPrice + totalGourmet*pizzaPriceGourmet); //order total+ amount of pizzas ordered * pizza price 
 
    var pizzaDelivery = prompt('Would you like your order to be delivered for $5, or for pick up? -Type in "1" for delivery, and "0" for pickup.') //asks if you want your order to be delivered or pickup 
 
    orderTotalPrice = (orderTotalPrice + (pizzaDelivery*pizzaDeliveryPrice)); // calculates the total cost with/without the delivery cost 
 
    alert("Total cost of pizzas is: $" + orderTotalPrice.toFixed(2)); //Display order cost as "$"0.00 (2 decimal points) 
 
    if (pizzaDelivery == '1'){ 
 
     var response = prompt("Please enter your address: ") 
 
     alert("Your pizza should be delivered within the next 25 minutes, to this address: " +response) 
 
     alert("Thank you for ordering with Pete's Pizzas " +customerName) 
 
     alert("If anything goes wrong we will contact you on your number: " +customerNumber) 
 
\t \t alert("The pizzas you ordered are: " +fullOrder) \t <----TO BE HERE 
 
     alert("Your order details are: " +customerName +"\n" +customerNumber +"\n" +response) 
 
     alert("To exit, just click 'ok' and then close down the program!") 
 
    } else if (pizzaDelivery == '0'){ 
 
     alert("Your order will be ready for pickup in 15 minutes!") 
 
     alert("Thank you for ordering with Pete's Pizzas " +customerName) 
 
     alert("If anything goes wrong we will contact you on your number: " +customerNumber) 
 
\t \t alert("The pizzas you ordered are: " +fullOrder) \t <----TO BE HERE 
 
     alert("Your order details are: " +customerName +"\n" +customerNumber) 
 
     alert("To exit, just click 'ok' and then close down the program!") 
 
    } 
 
} 
 

 
</script> 
 

 
<body> 
 
<h1> Welcome to Pete's Pizza! </h1> 
 
<p> Please follow the prompts to place your order. </p> 
 
<h2> Menu: </h2> 
 
<h3>($9.50) Hawaiian, Cheese, Veggie, supreme, pepperoni.</h3> 
 
<h3>($15.50) meat-lovers, chicken, prawn. </h3> 
 
<p><b>BE AWARE</b> that there is a $5 charge for deliveries. </p> 
 
<p> (Please note : Maximum 12 pizzas per Order) </p> 
 

 
<form name ="form">        
 
     
 
<input type="text" name= "hawaiian" > Hawaiian Pizza <br> 
 
<input type="text" name= "cheese" > Cheese Pizza <br> 
 
<input type="text" name= "veggie" > Veggie Pizza <br> 
 
<input type="text" name= "supreme" > Supreme Pizza <br> 
 
<input type="text" name= "pepperoni" > Pepperoni Pizza <br> 
 
<input type="text" name= "meatlovers" > MeatLovers Pizza <br> 
 
<input type="text" name= "chicken" > Chicken Pizza <br> 
 
<input type="text" name= "prawn" > Prawn Pizza <br> 
 

 
<input type="button" value="order now" onClick="order()"> 
 
<input type="button" value="cancel order" onClick="window.location.reload()"> 
 
</form> 
 

 

 

 
<i> If you need to cancel the order press the 'Prevent this page from creating  additional dialogs' button, then press the "cancel order" button. (This will take you back to the begging of the program.) </i> 
 
</body> 
 
    
 
</html>

+5

首先,解決語法錯誤 – Weedoze

+0

在你的瀏覽器控制檯一看,你可能有一個js錯誤的,額外的左括號是 – Pete

+0

固定的語法錯誤之後,我怎麼用函數order()中的變量fullOrder並將其放入函數calculate()中,並保持訂單詳細信息? – KPWH

回答

0

正如已經被提及@Weedoze,你的代碼中有一些語法錯誤,解決它們只是解決了問題。你可以檢查運行代碼here。更精確地說,有這一行的幾種用法:

<----- I NEED THIS 

爲了避免語法錯誤在將來的版本,你可以使用適當的IDE或只是包括語法高亮一個文本編輯。

+0

啊,是的,我應該刪除<---評論謝謝! – KPWH

0

對javascript和html的評論是不同的。

<html> 
 
<script> 
 

 
//Global variables 
 
var totalNumber = 0; // Total number of pizzas ordered 
 
var pizzaPrice = 9.50; // price of plain pizza 
 
var pizzaPriceGourmet = 15.50; //price of gourmet pizza 
 
var orderTotalPrice = 0; // total cost of order 
 
var pizzaDeliveryPrice = 5; // price for pizza delivery 
 
var FullOrder = 0; // number of pizza's ordered 
 
var customerName = prompt("Please enter your name.") //prompt to get the customers name 
 
var customerNumber = prompt("Please enter your phone number.") //prompt to get the customers number 
 
{ 
 
if (isNaN(customerNumber) || customerNumber < 8400000 || customerNumber > 999999999) {   // Checks if customerNumber is greater than 9999999 
 
     alert("Please enter a 7-digit telephone number between 8600000 - 9999999 Select the 'cancel order' button and enter a valid telephone number!");  // asks customer to enter a valid telephone number 
 
} else 
 
    alert("Lets continue!");  // Continues to main website 
 
} 
 

 

 
order();//call order 
 

 
calculate(totalGourmet,totalPlain);// while calling 
 
    
 
function order() 
 
{ 
 
    var pizza = new Array() 
 
    pizza[0] = document.form.hawaiian.value    //allocates type of pizza in array 
 
    pizza[0] = Number(pizza[0])       //converts to number value 
 
    pizza[1] = document.form.cheese.value     //allocates type of pizza in array    
 
    pizza[1] = Number(pizza[1])       //converts to number value 
 
    pizza[2] = document.form.veggie.value    //allocates type of pizza in array 
 
    pizza[2] = Number(pizza[2])       //converts to number value 
 
    pizza[3] = document.form.supreme.value    //allocates type of pizza in array 
 
    pizza[3] = Number(pizza[3])       //converts to number value 
 
    pizza[4] = document.form.pepperoni.value    //allocates type of pizza in array 
 
    pizza[4] = Number(pizza[4])       //converts to number value 
 
    pizza[5] = document.form.meatlovers.value    //allocates type of pizza in array 
 
    pizza[5] = Number(pizza[5])       //converts to number value 
 
    pizza[6] = document.form.chicken.value    //allocates type of pizza in array 
 
    pizza[6] = Number(pizza[6])       //converts to number value 
 
    pizza[7] = document.form.prawn.value    //allocates type of pizza in array 
 
    pizza[7] = Number(pizza[7])       //converts to number value 
 

 
    totalPlain = pizza[0] + pizza[1] + pizza[2] + pizza[3] + pizza[4]; 
 
    totalGourmet = pizza[5] + pizza[6] + pizza[7]; 
 

 
    var totalNumber = totalGourmet + totalPlain 
 

 
    var fullOrder = alert("You have ordered: " + "\n" +   
 
     "Hawaiian Pizza ($9.50): " + pizza [0] + "\n" + 
 
     "Cheese Pizza ($9.50): " + pizza [1] + "\n" + 
 
     "Veggie Pizza ($9.50): " + pizza [2] + "\n" + 
 
     "Supreme Pizza ($9.50): " + pizza [3] + "\n" + 
 
     "Pepperoni Pizza ($9.50): " + pizza [4] + "\n" + 
 
     "Meat-Lovers Pizza ($15.50): " + pizza [5] + "\n" + 
 
     "Chicken Pizza ($15.50): " + pizza [6] + "\n" + 
 
     "Prawn Pizza ($15.50): " + pizza [7]); 
 
     
 

 
    if (totalNumber >12) {   // Limit for total amount of Pizzas ordered 
 
     alert("There is a limit of 12 pizzas per order. - PRESS 'Prevent this page from creating  additional dialogs' THEN PRESS 'cancel order' AND THEN RE-ORDER! - Current total is: " +totalNumber); 
 
    } else 
 
     alert("Total number of pizzas ordered: " + totalNumber); //Total amount of pizzas ordered 
 
    calculate(totalGourmet,totalPlain) //Begins calculation function 
 
} 
 

 

 
function calculate(totalGourmet,totalPlain) //Function for the cost of the order 
 
{ 
 
    orderTotalPrice = (totalPlain*pizzaPrice + totalGourmet*pizzaPriceGourmet); //order total+ amount of pizzas ordered * pizza price 
 
    var pizzaDelivery = prompt('Would you like your order to be delivered for $5, or for pick up? -Type in "1" for delivery, and "0" for pickup.') //asks if you want your order to be delivered or pickup 
 
    orderTotalPrice = (orderTotalPrice + (pizzaDelivery*pizzaDeliveryPrice)); // calculates the total cost with/without the delivery cost 
 
    alert("Total cost of pizzas is: $" + orderTotalPrice.toFixed(2)); //Display order cost as "$"0.00 (2 decimal points) 
 
    if (pizzaDelivery == '1'){ 
 
     var response = prompt("Please enter your address: ") 
 
     alert("Your pizza should be delivered within the next 25 minutes, to this address: " +response) 
 
     alert("Thank you for ordering with Pete's Pizzas " +customerName) 
 
     alert("If anything goes wrong we will contact you on your number: " +customerNumber) 
 
    alert("The pizzas you ordered are: " +fullOrder) 
 
     alert("Your order details are: " +customerName +"\n" +customerNumber +"\n" +response) 
 
     alert("To exit, just click 'ok' and then close down the program!") 
 
    } else if (pizzaDelivery == '0'){ 
 
     alert("Your order will be ready for pickup in 15 minutes!") 
 
     alert("Thank you for ordering with Pete's Pizzas " +customerName) 
 
     alert("If anything goes wrong we will contact you on your number: " +customerNumber) 
 
    alert("The pizzas you ordered are: " +fullOrder); 
 
     alert("Your order details are: " +customerName +"\n" +customerNumber) 
 
     alert("To exit, just click 'ok' and then close down the program!") 
 
    } 
 
} 
 

 
</script> 
 

 
<body> 
 
<h1> Welcome to Pete's Pizza! </h1> 
 
<p> Please follow the prompts to place your order. </p> 
 
<h2> Menu: </h2> 
 
<h3>($9.50) Hawaiian, Cheese, Veggie, supreme, pepperoni.</h3> 
 
<h3>($15.50) meat-lovers, chicken, prawn. </h3> 
 
<p><b>BE AWARE</b> that there is a $5 charge for deliveries. </p> 
 
<p> (Please note : Maximum 12 pizzas per Order) </p> 
 

 
<form name ="form">        
 
     
 
<input type="text" name= "hawaiian" > Hawaiian Pizza <br> 
 
<input type="text" name= "cheese" > Cheese Pizza <br> 
 
<input type="text" name= "veggie" > Veggie Pizza <br> 
 
<input type="text" name= "supreme" > Supreme Pizza <br> 
 
<input type="text" name= "pepperoni" > Pepperoni Pizza <br> 
 
<input type="text" name= "meatlovers" > MeatLovers Pizza <br> 
 
<input type="text" name= "chicken" > Chicken Pizza <br> 
 
<input type="text" name= "prawn" > Prawn Pizza <br> 
 

 
<input type="button" value="order now" onClick="order()"> 
 
<input type="button" value="cancel order" onClick="window.location.reload()"> 
 
</form> 
 

 

 

 
<i> If you need to cancel the order press the 'Prevent this page from creating  additional dialogs' button, then press the "cancel order" button. (This will take you back to the begging of the program.) </i> 
 
</body> 
 
    
 
</html>