Hi,

I'm a newbie on javascript, and am experimenting with this simple script below.
I was wondering how could I halt/quite/close the script/program after pressing the X or CANCEL button?

I try to press X and CANCEL button, but it won't quit and this script results in infinite loop

<html><head><title>Phone Cost</title></head>
<body on>

<script>
var i
var minutes
var monthly
var excess
var charge
var total

while (minutes=1)

{
minutes = prompt("Minutes Used:");
alert("Your entery was: "+minutes+"");

monthly=40
excess=minutes-600
charge=excess*0.49
total=monthly+charge

	if(minutes>=600)
	{
		document.write("Your Minutes Uses is: "+minutes+" <br>");
		document.write("Excess Minutes Uses is: "+excess+" <br>");
		document.write("Monthly Charges is: $"+monthly+".00<br>");
		document.write("Excess Minutes Charge is: "+charge+" <br>");
		document.write("Total Charge is: "+total+" <br><br><br>");
	}

	
	else
	{
		document.write("Your Minutes Uses is: "+minutes+" <br>");
		document.write("Monthly Charges is: $"+monthly+".00<br><br><br>");
	}
	
}
</script>

</body>
</html>

Pleaseee helppp...

Recommended Answers

All 4 Replies

Member Avatar for Dukane

Problem #1 if (minutes = 1) should be if (minutes ==1). You want to check the value of minutes using the == operator. I'm not sure what the = will do in JavaScript, but it is probably checking to see if minutes is a declared variable and returns true since it is.

Member Avatar for GreenDay2001

Problem #1 if (minutes = 1) should be if (minutes ==1). You want to check the value of minutes using the == operator. I'm not sure what the = will do in JavaScript, but it is probably checking to see if minutes is a declared variable and returns true since it is.

he is right == checks equality and = equals the variable.

what code are u using for cancel button. have u used close() function.

wait, the <script> tag doesnt have all the necessary attributes also:
for javascript it must be

<script type="text/javascript">.....</script>

create a public/global variable called "stopped", set it to false when you start the loop.

inside the loop put:

if(stopped){
  break;
}

then when you press "cancel" set the stopped variable to true.

Member Avatar for Dukane

I took a look at your code, and made a few adjustments. Do you see why this works vs. your code?

<script type="text/javascript" lang="javascript">
var i;
var minutes = 0;
var monthly;
var excess;
var charge;
var total;

while (minutes != null) {
    minutes = prompt("Minutes Used:");
    alert("Your entry was: " + minutes);

    monthly = 40;
    excess = minutes - 600;
    charge = excess * 0.49;
    total = monthly + charge;

    if (minutes >= 600) {
        document.write("Your Minutes Uses is: " + minutes + "<br>");
        document.write("Excess Minutes Uses is: " + excess + "<br>");
        document.write("Monthly Charges is: $" + monthly + ".00<br>");
        document.write("Excess Minutes Charge is: " + charge + "<br>");
        document.write("Total Charge is: " + total + "<br><br><br>");
    } else {
        document.write("Your Minutes Use is: " + minutes + "<br>");
        document.write("Monthly Charge is: $" + monthly + ".00<br><br><br>");
    }
}
</script>
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.