JavaScript - Funky Forms (can You Do This?)
I am building a website for a client. This will involve some tricky form work. There will be forms on 2 pages. The first will be of generic questions such as:
"How many windows in you household?" After these questions are answered, a "Continue" button would be pressed. Then "Do you want your windows cleaned?" would be an option on the second page. At the end of that form on the second page, it would calculate the true answers with the filled in info from the first page. This is the way the client wants it. How would I go about this? I've been looking for ways to get seperate forms to cooperate with each other, I'd assume with ID tags and such, but can't find any good help. Any insight would be great!! Similar TutorialsSo I'm re-writing my procedural Back Jack program to be Object Oriented so that I can add a split option and some other features and I've run into this weird bug... This is the beginning of the function that assembles the HTML for each card when it is added. hand.prototype.createCardsHTML = function (cardNum) { console.log(this.cards); console.log(this.cards[cardNum]); console.log(this.cards[cardNum].name); if(this.player == "dealer" && cardNum == 0){ this.cards[cardNum].imgHTML = '<img src="images/cards/b2fv.png" alt="dealer pocket" />'; } else{ this.cards[cardNum].imgHTML = '<img src="images/cards/' + this.cards[cardNum].image +'" alt="' + this.cards[cardNum].name + ' of ' + this.cards[cardNum].suit +'s" />'; } attached is a screen shot of the console.log reports, as you can see the object get stored in the array but for whatever reason I can't access it's individual properties. This only occurs when the hit function is called, not when the initial hands are generated. I'm really confused so any help is appreciated. Also here is the entire script (note: it's very long, a bit disorganized and not yet complete) // JavaScript Document // JavaScript Document window.onload = blackJackTable; function blackJackTable () { //set-ables var insCost = 50; var dlrHitsOn = 17; var minBet = 10; var bank = 500; //Utilities var usedCards = new Array(53); var roundOver = true; var allBetsPlaced = false; var dealerWent = false; //var dlrIncrement = 0; //var plrIncrement = 0; //Load Objects loadJSON("data.json"); function loadJSON(url) { var headID = document.getElementsByTagName("head")[0]; var newScript = document.createElement('script'); newScript.type = 'text/javascript'; newScript.src = url; headID.appendChild(newScript); newScript.onreadystatechange= function () { if (this.readyState == 'complete' || this.readyState == 'loaded') startGame(); } newScript.onload= startGame; } function startGame() { //console.log(deck); //construct players function player(playerIdent){ this.lastBet = 0; this.bet = 0; this.playerName = playerIdent; this.hands = new Array(); this.betPlaced = false; this.bank = bank; this.insured = false; } //Construct Hands function hand(playerName, id, bet) { this.total = 0; this.locked = false; this.over = true; this.player = playerName; this.id = id; this.bet = bet; this.aces = 0; this.handDiv = new Array(); this.cards = this.newCard(2); // adds to cards at random to hand, updates aces and total } //function for adding cards to a hand hand.prototype.newCard = function (howMany){ var cards = new Array(); for(i=0; i<howMany; i++){ var card; do { card = Math.floor(Math.random() * 52); } //Check to see if the card is in use while (usedCards[card]); //Add card to used array usedCards[card] = true; var nextCard = cards.length; cards[nextCard] = deck[card]; //check for ace if(cards[nextCard].value == 11){ this.aces += 1; //check for dealer ace in second slot if(this.player == "dealer" && cards.length == 2){ //call offer insurance if dealer has ace in second slot this.offerIns();///!!! re-write to reference hand not player } } this.total += cards[nextCard].value; } //update player total return cards; } //DOM commands to generate dealer area HTML player.prototype.generateDlrHTML = function () { this.dlrRegion = document.getElementById('dealer-region'); //creates a div for dealer hand this.plrHands = document.createElement('div'); //sets the class name for dealer hand div this.plrHands.setAttribute('class', 'dealer-hands'); //adds dealerhand div to dlrRegion div this.dlrRegion.appendChild(this.plrHands); //creates a div for dealer total this.dealerTotalRegion = document.createElement('div'); //sets the class name for dealer hand div this.dealerTotalRegion.setAttribute('class', 'dealer-total'); //adds dealertotal div to dlrRegion div this.plrHands.appendChild(this.dealerTotalRegion); } //DOM commands to generate each player area HTML player.prototype.generatePlrHTML = function () { this.plrRegion = document.getElementById('players-region'); //creates a div for player hands this.plrHands = document.createElement('div'); //sets the class name for player hands div and adds it to region this.plrHands.setAttribute('class', 'hands'); this.plrRegion.appendChild(this.plrHands); //Create player bet and bank region this.hud = document.createElement('div'); //sets the class name for player hud and adds to region this.hud.setAttribute('class', 'hud'); this.plrRegion.appendChild(this.hud); //Create bank display this.bankDisplay = document.createElement('span'); //sets the class name for player hud and adds to region this.bankDisplay.setAttribute('class', 'bank-display'); this.hud.appendChild(this.bankDisplay); //Create bet display this.betDisplay = document.createElement('span'); //sets the class name for player hud and adds to region this.betDisplay.setAttribute('class', 'bet-display'); this.hud.appendChild(this.betDisplay); //Create bet field this.betField = document.createElement('input'); //sets the class name for player hud and adds to region this.betField .setAttribute('class', 'bet-input'); this.betField .setAttribute('type', 'text'); this.betField .setAttribute('value', 'bet here'); this.betField .setAttribute('name', 'bet-input'); this.hud.appendChild(this.betField ); //Create bet Button this.betBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.betBtn.setAttribute('class', 'bet-btn'); this.betBtn.setAttribute('type', 'button'); this.betBtn.setAttribute('value', 'Bet'); this.betBtn.setAttribute('name', 'Bet'); this.hud.appendChild(this.betBtn); var subvertEvent = this; this.betBtn.onclick = function () { subvertEvent.placeBet();}; //Create deal button this.dealBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.dealBtn.setAttribute('class', 'deal-btn'); this.dealBtn.setAttribute('type', 'button'); this.dealBtn.setAttribute('value', 'Deal'); this.dealBtn.setAttribute('name', 'Deal'); this.hud.appendChild(this.dealBtn); this.dealBtn.onclick = function () { subvertEvent.deal();}; } //DOM commands to create hand HTML player.prototype.createHandHTML = function (handNum){ //for(i=0; i<this.hands.length; i++){ //Create a hand div this.hands[handNum].handDiv = document.createElement('div'); //sets the class name for player hud and adds to region var handClass = 'hand-' +this.hands[handNum].id; this.hands[handNum].handDiv.setAttribute('class', handClass); this.plrHands.appendChild(this.hands[handNum].handDiv); this.hands[handNum].createHandCtrlHTML(handNum); //} } //Hit - adds and displays card to hand hand.prototype.hit = function () { this.cards.push(this.newCard(1)); var cardNum = this.cards.length -1; this.createCardsHTML(cardNum); } //Stand - Locks hand - If all hands are locked triggers dealersTurn() hand.prototype.stand = function () { //lock this hand this.locked = true; if(checkAllLocked == true){ dealersTurn(); } } //Double Down - doubles bet on hand calls hit for a single card then forces a stand. hand.prototype.doubleDown = function () { if (this.total > 0 && this.cards.length == 2){ //double bet this.bet = this.bet * 2; //!!!update bet //draw a card this.hit(); //force player to stand this.stand(); } else{ var message = "Sir/Maddam you cannot double down at this time."; dealerSays(message, "okay"); } } //Split - Creates a new player hand and assigns a new bet, moves cards as appropriate. hand.prototype.splitHand = function () { } //Creates hand control HTML hand.prototype.createHandCtrlHTML = function (handNum) { if(this.player != "dealer"){ //hand Control Region this.handControl = document.createElement('div'); //sets the class name for player hud and adds to region this.handControl.setAttribute('class', 'hand-control'); this.handDiv.appendChild(this.handControl); //Create hit button this.hitBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.hitBtn.setAttribute('class', 'hit-btn'); var btnId = 'hit-btn-' + this.player + '-' + this.id; this.hitBtn.setAttribute('id', 'btnId'); this.hitBtn.setAttribute('type', 'button'); this.hitBtn.setAttribute('value', 'Hit'); this.hitBtn.setAttribute('name', 'Hit'); this.handControl.appendChild(this.hitBtn); var subvertEvent = this; this.hitBtn.onclick = function () { subvertEvent.hit();}; //Create Stand button this.standBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.standBtn.setAttribute('class', 'hit-btn'); var btnId = 'stand-btn-' + this.player + '-' + this.id; this.standBtn.setAttribute('id', 'btnId'); this.standBtn.setAttribute('type', 'button'); this.standBtn.setAttribute('value', 'Stand'); this.standBtn.setAttribute('name', 'Stand'); this.handControl.appendChild(this.standBtn); this.standBtn.onclick = function () { hands[handNum].stand();}; //Create Double Down button this.dDBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.dDBtn.setAttribute('class', 'hit-btn'); var btnId = 'doubledown-btn-' + this.player + '-' + this.id; this.dDBtn.setAttribute('id', 'btnId'); this.dDBtn.setAttribute('type', 'button'); this.dDBtn.setAttribute('value', 'Double Down'); this.dDBtn.setAttribute('name', 'Double Down'); this.handControl.appendChild(this.dDBtn); this.dDBtn.onclick = function () { hands[handNum].doubleDown();}; //Create Split button this.splitBtn = document.createElement('input'); //sets the class name for player hud and adds to region this.splitBtn.setAttribute('class', 'hit-btn'); var btnId = 'split-btn-' + this.player + '-' + this.id; this.splitBtn.setAttribute('id', 'btnId'); this.splitBtn.setAttribute('type', 'button'); this.splitBtn.setAttribute('value', 'Double Down'); this.splitBtn.setAttribute('name', 'Double Down'); this.handControl.appendChild(this.splitBtn); this.splitBtn.onclick = function () { hands[handNum].splitHand();}; } } //Actived when used hits "deal" button - Adds a hand object to player object if appropriate //!!!Does not support multiplayer by design player.prototype.deal = function () { if(allBetsPlaced == true && roundOver == true){ //wipes old hands clearHands(); //adds a new hand players[0].newHand(); this.newHand(); //sets round over to false as this begins the new round roundOver = false; } } //New hand function creates a new hand called by deal and split player.prototype.newHand = function () { var handIdPass = this.hands.length + 1; this.hands.push(new hand(this.playerName, handIdPass, this.bet)); var handNum = this.hands.length - 1; //alert(this.hands.length); this.createHandHTML(handNum); for (i=0; i<this.hands[handNum].cards.length; i++){ this.hands[handNum].createCardsHTML(i); } } //DOM commands to create cards hand.prototype.createCardsHTML = function (cardNum) { console.log(this.cards); console.log(this.cards[cardNum]); console.log(this.cards[cardNum].name); if(this.player == "dealer" && cardNum == 0){ this.cards[cardNum].imgHTML = '<img src="images/cards/b2fv.png" alt="dealer pocket" />'; } else{ this.cards[cardNum].imgHTML = '<img src="images/cards/' + this.cards[cardNum].image +'" alt="' + this.cards[cardNum].name + ' of ' + this.cards[cardNum].suit +'s" />'; } this.cards[cardNum].cardDiv = document.createElement('div'); var cardId = 'card-' + this.cards[cardNum].id; this.cards[cardNum].cardDiv.setAttribute('id', cardId); $(this.cards[cardNum].cardDiv).hide(); this.cards[cardNum].cardDiv.innerHTML = this.cards[cardNum].imgHTML; this.handDiv.appendChild(this.cards[cardNum].cardDiv); $(this.cards[cardNum].cardDiv).fadeIn(1000); } ..... I'm using the autofill forms plugin for firefox which can be found he https://addons.mozilla.org/en-US/firefox/addon/4775 I use it to automatically fill various web forms, duh. But I would like certain values to be chosend randomly from a list I create. I contacted the developer and he said the add on probably does not need a new feature because there is a 'dynamic tags' function to fill certain forms with dynamic values (e.g. the current time or date). He has given over the project to another developer and told me I probably would find a solution in a good javascript programming forum. So here I am! Can anyone help me with this? Basically, I just need a javascript code which chooses on item from an array randomly, I guess? I'm not a programmer myself, so any help would be greatly (!) appreciated. Thanks a lot in advance for any further guidance! Note: Here are sample dynamic tags from the plugin: <datetime> new Date().toLocaleString() <useragent> navigator.userAgent <langcode> navigator.language <resolution> screen.width+'x'+screen.height <clipboard> this.getClipboardText() Forgive me if this isn't in the right spot. I'm new at php and java so bear with me. I have small form I found and modified. This works as I wanted it to. Code: <HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-- Begin function solveALK(form) { var alkalinity = eval(form.alkalinity.value); var alkneeds = eval(form.alkneeds.value); var change = (alkneeds) - (alkalinity); var add1 = (change) / (10) * (0.075) * (1.5) * (16); var add2 = (add1) / (16); form.alkchange.value = change; form.addoz.value = add1; form.addlbs.value = add2; } // End --> </script> </HEAD> <!-- STEP TWO: Copy this code into the BODY of your HTML document --> <BODY> <center> <table> <tr><td> </td> </tr> </table> <form method=post name=alkform> <table border=4> <tr> <td align=center> Alkalinity </td> <td align=center> <input type=text name=alkalinity size=3> </td> <td align=center> Needs to be: </td> <td align=center> <input type=text name=alkneeds size=3> </td> </tr> <tr> <td align=center> Change required: </td> <td colspan=3 align=center> <input type=text name=alkchange size=3> </td> </tr> <tr> <td align=center> Add this amount </td> <td colspan=3 align=center> <input type=text name=addoz size=3>oz </td> </tr> <tr> <td align=center> Add this amount </td> <td colspan=3 align=center> <input type=text name=addlbs size=3>lbs </td> </tr> <tr> <td colspan=4 align=center> <input type=button name=alk value="Calculate" onClick="javascript:solveALK(this.form)"> </td> </tr> </table> </form> </center> However when I put this into my php file, When I add my 2 figures to the input boxes. and click the calculate button, I get a NaN. I'm thinking it might be because I have 2 forms on my php page. One area of the page will update the database while this one would just calculate some figures. Here's the php page that doesn't seem to work. Code: <html> <head> <link rel="stylesheet" type="text/css" href="../style1.css" /> <title>Pool Log Report</title> <SCRIPT LANGUAGE="JavaScript"> <!-- Chemical calulations --> <!-- Begin function solveALK(form) { var alkalinity = eval(form.alkalinity.value); var alkneeds = eval(form.alkneeds.value); var change = (alkneeds) - (alkalinity); var add1 = (change) / (10) * (0.075) * (1.5) * (16); var add2 = (add1) / (16); form.alkchange.value = change; form.addoz.value = add1; form.addlbs.value = add2; } // End --> </script> </head> <body class="body"> <center> <table class="main1"> <?php include("update_header.php"); ?> <form action="updated.php" method="post" name="FormName"> <tr> <td class="main2"><input id="Dayid" name="Dayid" type="text" size="1" value="<?php echo $Dayid ?>" maxlength="2" readonly></td> <td class="main3"> </td> <td class="main3"><input id="patron_loading_max" name="patron_loading_max" type="text" size="1" value="<?php echo $patron_loading_max ?>" maxlength="2"></td> <td class="main3"><input id="patron_loading_24hr" name="patron_loading_24hr" type="text" size="1" value="<?php echo $patron_loading_24hr ?>" maxlength="2"></td> <td class="main3"><input id="water_clearity__clear" name="water_clearity__clear" type="checkbox" <?php if ($water_clearity__clear == "X") { echo "checked";} ?> value="X"></td> <td class="main3"><input id="water_clearity__turbid" name="water_clearity__turbid" type="checkbox" <?php if ($water_clearity__turbid == "X") { echo "checked";} ?> value="X"></td> <td class="main3"><input id="water_temp" name="water_temp" type="text" size="1" value="<?php echo $water_temp ?>" maxlength="3"></td> <td class="main3"><input id="psi" name="psi" type="text" size="1" value="<?php echo $psi ?>" maxlength="3"></td> <td class="main3"><input id="gpm" name="gpm" type="text" size="1" value="<?php echo $gpm ?>" maxlength="3"></td> <td class="main3"><input id="drain_back" name="drain_back" type="text" size="1" value="<?php echo $drain_back ?>" maxlength="5"></td> <td class="main3"><input id="chlorine_am1" name="chlorine_am1" type="text" size="1" value="<?php echo $chlorine_am1 ?>" maxlength="5"></td> <td class="main3"><input id="chlorine_am2" name="chlorine_am2" type="text" size="1" value="<?php echo $chlorine_am2 ?>" maxlength="5"></td> <td class="main3"><input id="ph_am1" name="ph_am1" type="text" size="1" value="<?php echo $ph_am1 ?>" maxlength="5"></td> <td class="main3"><input id="ph_am2" name="ph_am2" type="text" size="1" value="<?php echo $ph_am2 ?>" maxlength="5"></td> <td class="main3"><input id="chlorine_pm1" name="chlorine_pm1" type="text" size="1" value="<?php echo $chlorine_pm1 ?>" maxlength="5"></td> <td class="main3"><input id="chlorine_pm2" name="chlorine_pm2" type="text" size="1" value="<?php echo $chlorine_pm2 ?>" maxlength="5"></td> <td class="main3"><input id="ph_pm1" name="ph_pm1" type="text" size="1" value="<?php echo $ph_pm1 ?>" maxlength="5"></td> <td class="main3"><input id="ph_pm2" name="ph_pm2" type="text" size="1" value="<?php echo $ph_pm2 ?>" maxlength="5"></td> <td class="main3"><input id="combined_chl" name="combined_chl" type="text" size="1" value="<?php echo $combined_chl ?>" maxlength="4"></td> <td class="main3"><input id="alkalinity" name="alkalinity" type="text" size="1" value="<?php echo $alkalinity ?>" maxlength="3"></td> <td class="main3"><input id="chemicals_add" name="chemicals_add" type="text" size="1" value="<?php echo $chemicals_add ?>" maxlength="55"></td> <td class="main3"><input id="chemicals_qty" name="chemicals_qty" type="text" size="1" value="<?php echo $chemicals_qty ?>" maxlength="55"></td> <td class="main3"><input id="super_oxidation" name="super_oxidation" type="text" size="1" value="<?php echo $super_oxidation ?>" maxlength="3"></td> <td class="main4" class="main3"> </td> </tr> <tr> <td class="main4" colspan="24"> </td> </tr> <form method=post name=alkform> <tr> <td class="main2" colspan="3"> </td> <td class="main2" colspan="5"><b>Whirlpool Calculations</b></td> <td class="main2" colspan="5"> </td> <td class="main2" colspan="5"><b>Chlorine Shocking</b></td> <td class="main2" colspan="2"><b>FAS-DPD</b></td> <td class="main2" colspan="3"><b>Chlorine No-Shock</b></td> <td class="main2"> </td> </tr> <tr> <td class="main4" rowspan="3" colspan="3"> </td> <td class="main2" colspan="2">Alkalinity</td> <td class="main2"><input type=text name=alkalinity size=3></td> <td class="main2" colspan="2"> </td> <td class="main2" colspan="2">Calcium</td> <td class="main2"><input id="Calcium" name="Calcium" type="text" size="1" value="<?php echo $Calcium ?>" maxlength="3"></td> <td class="main2" colspan="2"> </td> <td class="main2" colspan="3">Drops</td> <td class="main2"><input id="R0871_drops" name="R0871_drops" type="text" size="1" value="<?php echo $R0871_drops ?>" maxlength="3"></td> <td class="main2" colspan="2">Breakpoint</td> <td class="main2"><?php echo $Breakpoint ?></td> <td class="main2" colspan="2">Needs to be:</td> <td class="main2"><input id="Chl_Needs" name="Chl_Needs" type="text" size="1" value="<?php echo $Chl_Needs ?>" maxlength="3"></td> <td class="main4" rowspan="3"> </td> </tr> <tr> <td class="main2" colspan="2">Needs to be:</td> <td class="main2"><input type=text name=alkneeds size=3></td> <td class="main2">Change:</td> <td class="main2"><input type=text name=alkchange size=3></td> <td class="main2" colspan="2">Needs to be:</td> <td class="main2"><input id="Cal_Needs" name="Cal_Needs" type="text" size="1" value="<?php echo $Cal_Needs ?>" maxlength="3"></td> <td class="main2"">Change:</td> <td class="main2"><?php echo $Cal_Change ?></td> <td class="main2" colspan="3">Free Chl</td> <td class="main2"><?php echo $Free_Chl ?></td> <td class="main2">ppm</td> <td class="main2" colspan="2">Amt to shock</td> <td class="main2" colspan="2">Change Required</td> <td class="main2"><input id="Chl_Change" name="Chl_Change" type="text" size="1" value="<?php echo $Chl_Change ?>" maxlength="3" readonly></td> </tr> <tr> <td class="main2" colspan="3">Add Sodium BiCarb</td> <td class="main2"><input type=text name=addoz size=3></td> <td class="main2">Oz</td> <td class="main2" colspan="3">Add Calcium</td> <td class="main2"><?php echo $Cal_Add_oz ?></td> <td class="main2">Oz</td> <td class="main2" colspan="3">Drops</td> <td class="main2"><input id="R0003_drops" name="R0003_drops" type="text" size="1" value="<?php echo $R0003_drops ?>" maxlength="3"></td> <td class="main2"> </td> <td class="main2"><?php echo $AmtShk_oz ?></td> <td class="main2">oz</td> <td class="main2" colspan="2">Add this in oz</td> <td class="main2"><input id="Chl_Add" name="Chl_Add" type="text" size="1" value="<?php echo $Chl_Add ?>" maxlength="3"></td> </tr> <tr> <td class="main4" colspan="6"> </td> <td class="main2"><input type=text name=addlbs size=3></td> <td class="main2">Lbs</td> <td class="main2" colspan="3"> </td> <td class="main2"><?php echo $Cal_Add_lbs ?></td> <td class="main2">Lbs</td> <td class="main2" colspan="3">Combined Chl</td> <td class="main2"><?php echo $Comb_Chl ?></td> <td class="main2">ppm</td> <td class="main2"><?php echo" ".number_format($AmtShk_gal,2); ?></td> <td class="main2">Gal</td> <td class="main4" colspan="6"> </td> </tr> <tr> <td colspan="24" align="center" class="main2">Make your changes and click the update button below.</td> </tr> <tr> <td colspan="24" align="center" class="main2"><input type=button name=alk value="Calculate" onClick="javascript:solveALK(this.form)"></form> <input type="button" value="Update" onclick="this.form.action='updated.php'; this.form.submit();"><input type="hidden" name="id" value="id"> <INPUT TYPE="button" VALUE="Back" onClick="history.go(-1);return true;"></td> </tr> </table> </form> </center> If I am correct that I need to separate the forms. How do I do so? Or am I going about this wrong? Hello, I have a tricky one here. What I have is a form where the user would enter in their food recipe. There is nothing clever in that until I need them to enter in the ingredients and the quantity into 2 seperate fields. The issue is that I don't know how many different ingredients there would be for the recipe so from within the form before the record is saved I need them to be able to fill out the 2 fields as many times as they need to (pressing a button each time) and I would have thought for the data to be held in a javascript array that i could then write away into the mysql table? I probably haven't made much sense. Can anyone help? Hi , I want to make few forms but 1 submit button. I want to do 1 page , 5 forms , 1 submit button so when i click on the submit button it will send the 5 forms as 1 form. how I can so that? thanks , Mor. Okay well here is my code. i want to mkae it so the functions add together to get a total price, i need some help Code: <html> <head> </head> <script type="text/javascript"> function addit(){ if(document.getElementById("add").value=="0") { document.getElementById("amount").value="$0.00" } if(document.getElementById("add").value=="1") { document.getElementById("amount").value="$5.00" } if(document.getElementById("add").value=="2") { document.getElementById("amount").value="$10.00" } if(document.getElementById("add").value=="3") { document.getElementById("amount").value="$15.00" } } function addit2(){ if(document.getElementById("add2").value=="4") { document.getElementById("amount").value="$30.00" } if(document.getElementById("add2").value=="5") { document.getElementById("amount").value="$40.00" } } </script> <body> <table class="comparison pricing-email" border="0" cellspacing="1" cellpadding="0" width="30%"> <tbody> <tr class="row1"> <td class="col1">Choose # of EMAIL accounts: <select style="width: 60px; font-size: 17px;" name="add" id="add" onChange="addit()"> <option value="0"> </option> <option value="1">1</option> <option value="2">3</option> <option value="3">6</option> </select> </td> </tr> <tr class="row2"> <td class="col2">Choose # of EMAIL accounts: <select style="width: 60px; font-size: 17px;" name="add" id="add2" onChange="addit2()"> <option value="0"> </option> <option value="4">44</option> <option value="5">43</option> <option value="3">342</option> </select> </td> </tr> <tr class="row1"> <td class="col1">Total Price: <input type="text" id="amount" value="" style="border:none; font-size:13pt;"></td> </tr><tr> <td> <input type="submit" name="submit" value="Sign-Up"> </td> </tr> </tbody> </table> </form> </body> When I click Vacant after 5 and it goes to occupied. How would I make it come back to vacant when clicked again? Code: <html> <head> <script type="text/javascript"> function fillForm() { if (counter > 10){ } } </script> <script type="text/javascript"> function StartCounting(){ setInterval("DoCounting()", 1000) } var Counter = 0; function DoCounting(){ var obj = document.getElementById('countingtext'); obj.innerHTML = '' + Counter; Counter++; if( Counter > 5) { var obj1 = document.getElementById("closed").value = "Open"; var space1 = document.getElementById("space1") space1.onclick = linkClick; } } function linkClick(){ space1 = document.getElementById("space1").value = "Occupied"; } </script> </head> <body onload= "StartCounting()"> Open at 5: <span id="countingtext"></span> </body> </html> <div style="margin-right:3mm; " > <form action="#" method="post" id="theForm" > <input size="10" id="closed" value="Closed" style="text-align:center;" /> <script type="text/javascript"> </script> <input type='button' id="space1" name='s"+ i+"' value='Vacant' onclick='readSpace(s"+ i+")' style='width:15mm;' /></td> </form> </div> Hello. I am using javascript to create a dynamic form to allow me to add multiple items to the form before posting... this is the code: Code: if (!$_POST) { ?> <title>Adding elements to a form</title> <form name="form1" enctype="multipart/form-data" action="" method="post"> <div ID="Items"> <b>Dog 1:</b> <input type="text" name="Item1" size="45"> <br> <input type="button" value="Add Item" onClick="AddItem();" ID="add"> <input type="submit" name ="submit" value="Submit Form" > </div> </form> <? } else { echo print_r ($_POST); } ?> <script language="javascript"> var items=1; function AddItem() { div=document.getElementById("Items"); button=document.getElementById("add"); items++; newitem="<b>Dog " + items + ": </b>"; newitem+="<input type=\"text\" name=\"Item" + items ; newitem+="\" size=\"45\"><br>"; newnode=document.createElement("span"); newnode.innerHTML=newitem; div.insertBefore(newnode,button); } </script> It works but each element in the printed post array shows as Item1, Item2 etc with each being a seperate array... How can I make it so that I have a single posted array called Item with that array then having elements Item[1] etc up to the number of elements I add... Any help would be appreciated the following javascript code is for a page that has to different login sections (username and password) hospital admin i want them to login in their part using normal IDs(numbers) and password, and normal users to login in the other login boxes (using email address and password) , each login boxes have their own submit button. the problem is i can't check each of them alone. what i want to do is that if (for user) email and password entered and pressed his login button, to be headed to another page, while if hospital admin entered his id and password in his section and pressed login button, to be headed for a different page. help please ! Code: window.onload = initForms; function initForms() { for (var i=0; i< document.forms.length; i++) { document.forms[i].onsubmit = function() {return checkFields();} } } function checkFields(){ if(document.getElementById("userLogin").onclick) { if(isEmail(document.getElementById("userUsername").value)==false) { alert("Please enter a valid e_mail address."); document.getElementById("userUsername").focus(); return false; } if(document.getElementById("userUsername").value=="") { alert("Please enter your e_mail address."); document.getElementById("userUsername").focus(); return false; } if(document.getElementById("userPassword").value=="") { alert("Please enter your password."); document.getElementById("userPassword").focus(); return false; } } if(document.getElementById("hospLogin").onclick) { if(document.getElementById("hospUsername").value=="") { alert("Please enter your ID."); document.getElementById("hospUsername").focus(); return false; } if(document.getElementById("hospPassword").value=="") { alert("Please enter your password."); document.getElementById("hospPassword").focus(); return false; } } } function isEmail(mail) { var char1 = mail.split("@"); var y = mail.indexOf("@", 0); var e = mail.indexOf(".", 0); var w = mail.lastIndexOf(".", mail.length - 1); var sp = mail.indexOf(" ", 0); var pl = mail.indexOf("@.", 0); for (i = 0; i < mail.length; i++) { if (mail.charAt(i) == "/" || mail.charAt(i) == ":" || mail.charAt(i) == ";" || sp > 0 || pl > 0 || mail.charAt(i) == '"' || char1.length > 2 || y == -1 || y == 0 || e == 0 || w == mail.length - 1 || e == -1) { return false; } } } and there goes the HTML codes: Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="script.css" /> <script type="text/javascript" src="script.js"></script> <title>Blood high res END</title> </head> <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <div id="apDiv4" style="background:url(images/Blood-high-res-END_04.jpg) no-repeat"></div> <div id="apDiv1" style="background:url(images/Blood-high-res-END_01.jpg)"> <p>Hospital</p> <form name="hospForm" id="hospForm"> <input type="text" name="hospUsername" id="hospUsername" class="reqd" /><br /> <input name="hospPassword" type="password" id="hospPassword" class="reqd" /><br /><br /> <input name="submit" type="submit" id="hospLogin" value="Hospital log in" /></form></div> <div id="apDiv2" style="background:url(images/Blood-high-res-END_02.jpg)"></div> <div id="apDiv3" style="background:url(images/right.jpg)"> <a id="register" href="../User Registration Page/page.html" target="_self">Register Now</a> <a id="links" href="../Links/page.html" target="_self">Links</a> <p>Visitor</p> <form name="userForm" id="userForm"> <input type="text" name="userUsername" id="userUsername" class="reqd" /><br /> <input name="userPassword" type="password" id="userPassword" class="reqd" /><br /><br /> <input name="submit" type="submit" id="userLogin" value="User log in" /><br /></form> <a id="register2" href="../User Registration Page/page.html" target="_self">Register now</a><br /> <a id="forgot" href="../User Forgot Password/page.html" target="_self">Forgot Password</a></div> <div id="apDiv5" style="background:url(images/Blood-high-res-END_05.jpg) no-repeat"></div> <div id="apDiv6" style="background:url(images/Blood-high-res-END_06.jpg) no-repeat"> <p>Hello and welcome to Red Drop. By visiting our page,<br />you ensure to each and every one of the team crew <br />behind the stage, and to every lebanese person that<br />you are mentally prepared to donate a few drops of your<br />blood to the benefit of an anonymous stranger.<br /><br />With every drop you donate, you might be giving<br />a father, a mother or a child another day to live among<br />his family and his beloved persons.<br /><br />Register today and add donation blood to your frequently<br />social and humanitarian activities.</p> </div> <div id="apDiv7" style="background:url(images/Blood-high-res-END_07.jpg) no-repeat"></div> <div id="apDiv8" style="background:url(images/Blood-high-res-END_08.png) no-repeat"></div> <div id="apDiv9" style="background:url(images/Blood-high-res-END_09.jpg) no-repeat"></div> </body> </html> I havent added the server side scripts yet, i am planning to validate forms as much as possible using javascript first, and this is not for a real hospital, it's a graduation project, so to explain the point, on the page i have 2 seperated forms wich each having its own submit button, one to be used by hospital admins, and other to be used by users. For admins i just want to make sure their fields are not empty. For users i want to make sure their fields are not empty and their email field is valid. but when trying it, it's kinda only checks for the user fields. P.S: I apologize about not using codes, i didn't knew about this option. I am trying to take the add the numbers input into form boxes 1 and 2 and then output them onto the screen following the form boxes. I have tried many different functions and none of them will work. Can anyone point me in the right direction? Here's my code so far: Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Math and Compare</title> <link rel="stylesheet" type="text/css" href="assignment1.css" /> <div align="center"> <script type="text/javascript"> var title = "<strong>Assignment 1 </br> Aughtman, Zackary</strong>" document.write(title.fontsize(5)); </script> <script type="text/javascript"> function result_One(firstNum, secondNum, result1) { firstNum = document.getElementById("box1").value; secondNum = document.getElementById("box2").value; result_One = this.firstNum + this.secondNum; return calc.result_One; } </script> </head> <body> </br> </br> <div id="div1" align="center"> <strong>Addition</strong> </div> <table align = "center"> <tr> <td> <form id="box1"> <input type="text" value="" id="box1" class="box1" /> + <input type="text" value="" id="box2" class="box2" /> = 000000000 </br> <div align="center"> <input type="button" value="Add" id="add" onclick="result_One;" /> </td> </tr> </table> </body> </html> Hey I was hoping someone could help me. I have written a form in HTML. But it is very long - I would like to make it a Tabbed form so that at the top there is tabs for each section to make it more managable and less intimidating. I figured it was probably Javascript - but I don't know JS so I was wondering what I would have to do for that form to be made? Is there a predefined function or something or does anyone know how to code a form like that? Regards, Angelous I'm having a total brain fart as to why this is happening. I just transferred my company's website from aplus.net servers to a linux based server on GoDaddy. My company's "shop" page has a drop down menu which should automatically re-direct you to a different page (on a different website where our shopping cart is hosted) when the option is selected. For some reason, after the switch to a different host, the option tags are no longer re-directing to the proper pages. Instead, they just tack on the value URL onto the existing URL and i just go in circles. javascript: <script language="JavaScript" type="/text/javascript"> function nav() { var w = document.myform.mylist.selectedindex.html; var url_add = document.myform.mylist.options[w].value; window.location.href = url_add; } </script> HTML for options form: <FORM NAME="myform"> <SELECT NAME="mylist" onChange="nav()"> <OPTION VALUE="http://bedvoyage.com/shop">Select Your Product <OPTION VALUE="http://bedvoyage.myshopify.com/products/twin-sheet-set">Sheet Set - Twin - $139.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/double-sheet-set">Sheet Set - Double - $159.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/queen-sheet-set">Sheet Set - Queen - $179.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/king-sheet-set">Sheet Set - King - $199.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/twin-pillow-case">Pillow Case - Twin - $20.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/double-pillow-case">Pillow Case Set - Double - $40.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/queen-pillow-case">Pillow Case Set - Queen - $42.00 <OPTION VALUE="http://bedvoyage.myshopify.com/products/king-pillow-case">Pillow Case Set - King - $45.00 <option value="http://bedvoyage.myshopify.com/products/zippered-travel-pillow-case">Zippered Travel Pillow Case - $19.00 <!-- <OPTION VALUE="http://bedvoyage.myshopify.com/produ...uot;>Travel Blanket - $39.00 --> </SELECT> </FORM> Is there an option on godaddy that i'm just missing out on that i'm too ignorant to notice? Thanks in advance. I'm trying to add an input element to all forms using appendChild. The script first searches for input elements with the name of "myinput". If it finds an input element with that name, it assigns the value "myvalue". If it can't find an input element with that name, it tries to create a new one for all forms. Code: if (document.getElementsByName('myinput')) { var testcode = document.getElementsByName('myinput'); for (var i=0; i < testcode.length; i++){ testcode[i].value = "myvalue";} } else { var z = document.createElement("input"); z.type = "hidden"; z.name = "myinput"; z.value = "myvalue"; z.id = "mycode"; var d = document.getElementsByTagName('form'); for (var i=0; i < d.length; i++){ d.appendChild(z);} } What's wrong with my code? Thanks! Hello, I'm looking for an example on adding items from a popup window to my current form. So I have a form where a user will request some data and one of the options is to request certain files. So, I would like to add a button which allows the user to open a separate window to choose some files to associate with the form/request. I would then like to see those items show up in my current form . I hope this makes sense :-) Thanks, tom I am trying to set up a form for paypal where the amount (cost) of the product is based on the currency chosen. I am trying to set this up using javascript which would submit the form and change the amount in the form. However, as a beginner, I am having some issues. This is what I have currently: Code: <html> <head> <script type="text/javascript"> function CalculateOrder(theform) { var currency = theform.currency_code.value; if (currency == "GBP") { theform.amount.value = "1.29" } else if (currency == "USD") { theform.amount.value = "1.99" } else if (currency == "EUR") { theform.amount.value = "1.39" } document.payform.submit(); } </script> </head> <body> <form target="paypal" action="https://www.paypal.com/cgi-bin/webscr " method="post" name="payform"> <input type="hidden" name="on0" value="Currency"> <select name="currency_code"> <option value="GBP" selected >GBP</option> <option value="USD">USD</option> <option value="EUR">EUR</option> </select> </p> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif " onClick="CalculateOrder(this.form)" alt="Make payments with PayPal - it's fast, free and secure!"> <input type="hidden" name="add" value="1"> <input type="hidden" name="cmd" value="_xclick"> <input type="hidden" name="business" value="myemail@gmail.com"> <input type="hidden" name="item_name" value="My Prouct"> <input type="hidden" name="amount" value="0.00"> <input type="hidden" name="shipping" value="0"> <input type="hidden" name="no_shipping" value="1"> </form> </fieldset> </body> </html> The javascript is executed but clicking the image submits the form before the javascript runs and I am worried that the javascript may not run before the form is submitted so the amount would not be calculated - please help! I do not want to calculate the costs based on the exchange rate. I would really prefer (and also find it simpler) to just specify the cost in each currency. Thanks in advance! Hi all - I'm having difficulty with the processing of 3 forms on my web page. We'll call my 3 forms A, B, and C. By default my page shows form A. The other 2 forms I have hidden via display:none My issue is when I have form B or C showing. Once I hit submit, say within form B for example, I'd like this form to remain for future entries/submital of data. However, instead what happens is form A appears. How do I get form B to remain, allowing for a user to submit multiple entries of data without going back to form A? Here's my code for form 'B' <div id="branches_info" style=" <?php echo $display_branches; ?> "> form method="post" action="annual_report_main.php" onsubmit="return validateBranches(this);"> <fieldset> <p><strong>Branch Location</strong></p><br /> <label for="branch_address" class="long">Street Address:</label> <input maxlength="50" type="text" name="branch_address" id="branch_address" value="<?php echo htmlentities($_POST['branch_address']);?>" /><br /> <div class="cleaner"></div> <label for="branch_city" class="long">City:</label> <input maxlength="20" type="text" name="branch_city" id="branch_city" value="<?php echo htmlentities($_POST['branch_city']);?>" /><br /> <div class="cleaner"></div> <label for="branch_state" class="long">State:</label> <input maxlength="2" type="text" name="branch_state" id="branch_state" value="<?php echo htmlentities($_POST['branch_state']);?>" /><br /> <div class="cleaner"></div> <label for="branch_zip" class="long">Zip Code:</label> <input maxlength="10" type="text" name="branch_zip" id="branch_zip" value="<?php echo htmlentities($_POST['branch_zip']);?>" /><br /> <div class="cleaner"></div> <div class="content_onecolumn"> <input type="submit" name="Branches" value="Submit to Database" class="inputSubmit" /> </div> <div class="content_onecolumn"> <input type="button" name="Finished" value="Finished" class="inputSubmit" onclick="window.open('https://www.dca.ca.gov/webapps/bppe/thankyou.php');return false" /> </div> </fieldset> </form> </div> Im very much a beginner and just wanted to test out using forms and displaying results using the Javascript IF statement. Below is what Im trying to do which is see how a form works and display the entered data using the Javascript IF statement but I'm confused on why it won't work. <html> <head> <script type="text/javascript"> if (myNum == 7){ document.write("7"); } else { document.write("not 7"); } </script> </head> <body> <p><font size="5">Trying to understand the text box in forms and displaying results using Javascipt</font></p> <hr /> <form method="get" name="jsform"> <input type="text" name="myNum"> <input type="submit" value="SUBMIT"> </form> </body> </html> I need help and a good Beginners book to read thanks John I have a problem with some forms and utilizing the proper code to make them work. Need some help if anyone out there has some working knowledge could help let me now, anyone ?? Eric I will post the code and the problem if someone would chim in thanks |