www.webdeveloper.com
Results 1 to 2 of 2

Thread: select box default to the value of a variable that is set when page loads

  1. #1
    Join Date
    Jun 2014
    Posts
    2

    select box default to the value of a variable that is set when page loads

    I am trying to set up a HTML select box where the user can enter morning, noon and night. I also want this to editable if the user returns to the site.

    If for example the user were to choose night, and then returned to the page a day later, when they open the page, the page would first fetch the users data and store it in a variable called “when”
    When the select box loads i would like to to to determine the value of “when” (morning, noon or night) and set the select box to that value.

    I can set the default to always return to morning. i.e.: <option value="1" SELECTED>Morning</option> but that won’t work for me. I have tried the following to use javascript but it isn’t working.


    Any guidance would be greatly appreciated.



    Code:
    <script>
    
    var when = Noon;
    
    // I TRIED BOTH OF THE FOLLOWING:
    
    
    document.getElementById(‘times’).options[“Noon”].selected = true;
    
    
    
    document.getElementById(‘times’).options[2].selected = true;
    
    
    
    
    
    
    </script>
    
    
    *
    <form name="myForm" id="myForm">
    ****<select name=“times” id=“times”>
    ***** * *<option value="1">Morning</option>
    ***** * *<option value="2">Noon</option>
    * * * ****<option value="3">Night</option>
    ****</select>
    </form>

  2. #2
    Join Date
    Oct 2013
    Posts
    514
    First a hard-won lesson: "Curly quotes" are poison in any sort of coding. You have them scattered all over your script and HTML. If you copied some of that code from a website be aware that some CMS/blog and forum scripts automatically make all quotes "curly". Also, make sure you are coding in either a text editor or some kind of coding editor. Never, ever, code/edit in a word processor.
    Code:
    poison: ‘ ’ or “ ”
    good: ' ' or " "
    That out of the way, try this:
    HTML Code:
    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>Choose time</title>
    <script>
    	onload = function(){
    		var t = localStorage.time;
    		if (t != 'undefined'){
    			document.getElementById('times').value = t;
    		}
    		else{
    			document.getElementById('times').value = '0';
    		}
    	}
    	
    	function setTime(el){
    		localStorage.time = el;
    	}
    </script>
    <body>
    
    <form name="myForm" id="myForm">
    	<label for="times">Choose a time:</label><br>
    	<select name="times" id="times" onchange="setTime(this.value)">
    		<option value="0">--</option>
    		<option value="1">Morning</option>
    		<option value="2">Noon</option>
    		<option value="3">Night</option>
    	</select>
    </form>
    
    </body>
    </html>

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles