CSS with JavaScript - Cannot read property 'undefined' error -


i tried change colors of select lists header, title , text. added functions changehead(), changetitle() , changebody() this. , bind elements through unique id.

but i'm getting following error

uncaught typeerror: cannot read property 'undefined' of undefined

in function changehead(), after

header = document.form1.heading.options[i].value; 

and in function changetitle() after

header = document.form1.heading.options[i].value; 

i'm not sure whether should using 2 different functions or if can done one.

code:

<script>     function changehead() {         = document.form1.heading.selectedindex;         header = document.form1.heading.options[i].value;         document.getelementbyid("head1").style.color = header;     }      function changetitle() {         = document.form1.heading.selectedindex;         header = document.form1.heading.options[i].value;         document.getelementbyid("head2").style.color = header;     }      function changebody() {         = document.form1.body.selectedindex;         doccolor = document.form1.body.options[i].value;         document.getelementbyid("p1").style.color = doccolor;     } </script> </head> <body>     <h1 id="head1">controlling styles javascript</h1>     <hr>     <h2 id="head2">subtitles @ screen. , cery important subtitles!</h2>      <hr>     <p id="p1">select color paragraphs , headings using form below. colors specified dynamically changed in document. change occurs change value of either of drop-down lists in form.</p>      <form name="form1"> <b>heading color:</b>          <select name="heading" onchange="changehead();">             <option value="black">black</option>             <option value="red">red</option>             <option value="blue">blue</option>             <option value="green">green</option>             <option value="yellow">yellow</option>         </select>         <br>             <b>body text color:</b>          <select name="body" onchange="changebody();">             <option value="black">black</option>             <option value="red">red</option>             <option value="blue">blue</option>             <option value="green">green</option>             <option value="yellow">yellow</option>         </select>         <br>    <b>heading second color:</b>          <select name="heading" onchange="changetitle();">             <option value="black">black</option>             <option value="red">red</option>             <option value="blue">blue</option>             <option value="green">green</option>             <option value="yellow">yellow</option>         </select>     </form> </body> 

questions:

  • how circumvent situation errors?
  • do need 2 different functions changing head & title, or 1 enough (if yes - how)?

you have 2 selects named "heading". give them different names , javascript stop throwing errors.

here working example: http://jsbin.com/uritid/1/edit


Comments

Popular posts from this blog

android - getbluetoothservice() called with no bluetoothmanagercallback -

sql - ASP.NET SqlDataSource, like on SelectCommand -

ios - Undefined symbols for architecture armv7: "_OBJC_CLASS_$_SSZipArchive" -