The switch Construction in Action : Switch : Language Basics JAVASCRIPT DHTML TUTORIALS


JAVASCRIPT DHTML TUTORIALS » Language Basics » Switch »

 

The switch Construction in Action



/*
JavaScript Bible, Fourth Edition
by Danny Goodman 

John Wiley & Sons CopyRight 2001
*/


<HTML>
<HEAD>
<TITLE>Switch Statement and Labeled Break</TITLE>
<SCRIPT LANGUAGE="JavaScript1.2">
// build two product arrays, simulating two database tables
function product(name, price) {
    this.name = name
    this.price = price
}
var ICs = new Array()
ICs[0new product("Septium 900MHz","$149")
ICs[1new product("Septium Pro 1.0GHz","$249")
ICs[2new product("Octium BFD 750MHz","$329")
var snacks = new Array
snacks[0new product("Rays Potato Chips","$1.79")
snacks[1new product("Cheezey-ettes","$1.59")
snacks[2new product("Tortilla Flats","$2.29")
// lookup in the 'table' associated with the product
function getPrice(selector) {
    var chipName = selector.options[selector.selectedIndex].text
    var outField = document.forms[0].cost
    master:
        switch(selector.options[selector.selectedIndex].value) {
            case "ICs":
                for (var i = 0; i < ICs.length; i++) {
                    if (ICs[i].name == chipName) {
                        outField.value = ICs[i].price
                        break master
                    }
                }
                break
            case "snacks":
                for (var i = 0; i < snacks.length; i++) {
                    if (snacks[i].name == chipName) {
                        outField.value = snacks[i].price
                        break master
                    }
                }
                break
            default:
                outField.value = "Not Found"
        }
}
</SCRIPT>
</HEAD>
<BODY>
<B>Branching with the switch Statement</B>
<HR>
Select a chip for lookup in the chip price tables:<P>
<FORM>
Chip:<SELECT NAME="chips" onChange="getPrice(this)">
    <OPTION>
    <OPTION VALUE="ICs">Septium 900MHz
    <OPTION VALUE="ICs">Septium Pro 1.0GHz
    <OPTION VALUE="ICs">Octium BFD 750MHz
    <OPTION VALUE="snacks">Rays Potato Chips
    <OPTION VALUE="snacks">Cheezey-ettes
    <OPTION VALUE="snacks">Tortilla Flats
    <OPTION>Poker Chipset
</SELECT>&nbsp;
Price:<INPUT TYPE="text" NAME="cost" SIZE=10>
</FORM>
</BODY>
</HTML>

           
       



-

Leave a Comment / Note


 
Verification is used to prevent unwanted posts (spam). .

Follow Navioo On Twitter

JAVASCRIPT DHTML TUTORIALS

 Navioo Language Basics
» Switch