multiple Input for sales system with javascript and PHP -


hi :) have dificulties in develope sales system. in system have itemname,item price,qty , total. problem every time want add new row new item entry the price won't appear in item price textbox , calculation "total" did not works too. can 1 me solved problems. here code regards, sugi

<!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" />     <script type="text/javascript" src="script.js"></script>  <title>untitled document</title>enter code here </head>  <body onload="setup()" > <script  type="text/javascript">  function setup(){             var itemname = document.getelementbyid("item_name");             var tot = document.getelementbyid("price");               itemname.onchange = function() {             var x = document.getelementbyid("item_name").selectedindex;             var y = document.getelementbyid("item_name").options;             tot.value =  y[x].value;                                                  }                  } function totalall(){     var a=document.getelementbyid("price");     var b=document.getelementbyid("qty");     var c=document.getelementbyid("total");     c.value=a.value*b.value; }                   </script> <table width="871" height="293" border="0">   <tr>     <td><form id="form1" name="form1" method="post" action="">       <p><strong>sales </strong></p>       <table>              <tr>           <td>item name</td>           <td>item price</td>           <td>qty</td>           <td>total</td>          </tr> </table>          <table id="datatable" class="form" border="1">          <tr>           <td><select   id="item_name"> <option value="100">usb flash drive</option> <option value="200">cd rom</option> <option value="300">2 gb ram</option> <option value="400">1 tera ram</option> <option value="500">mouse </option>              </select></td>            <td><label for="qty"></label>             <input name="price[]" type="text" id="price" size="2" /></td>           <td><input name="qty[]" type="text" id="qty"  onblur="totalall()"/></td>           <td><input name="total[]" type="text" id="total"/></td>         </tr>     </table>       <table width="200" border="0">         <tr>           <td><input type="button" value="add row" onclick="addrow('datatable')" /> </td>          </tr>       </table>         </tr>       </table>       <p>&nbsp;</p>     </form>  </body> </html> 

and here code script.js

function addrow(tableid) {     var table = document.getelementbyid(tableid);     var rowcount = table.rows.length;     if(rowcount < 20){                          // limit user creating fields more limits         var row = table.insertrow(rowcount);         var colcount = table.rows[0].cells.length;         for(var i=0; i<colcount; i++) {             var newcell = row.insertcell(i);             newcell.innerhtml = table.rows[0].cells[i].innerhtml;         }     }else{          alert("maximum passenger per ticket 20.");      } }  function deleterow(tableid) {     var table = document.getelementbyid(tableid);     var rowcount = table.rows.length;     for(var i=0; i<rowcount; i++) {         var row = table.rows[i];         var chkbox = row.cells[0].childnodes[0];         if(null != chkbox && true == chkbox.checked) {             if(rowcount <= 1) {                         // limit user removing fields                 alert("cannot remove passenger.");                 break;             }             table.deleterow(i);             rowcount--;             i--;         }     } } 

problem dynamically generated elements. when generating new select box, text boxes elements have same id. when generating price field dynamically fields have id="price".

but according rule in dom, every element must have unique id. that's why onchange() event not working on dynamically generated rows. generate unique id work.


Comments

Popular posts from this blog

windows - Single EXE to Install Python Standalone Executable for Easy Distribution -

c# - Access objects in UserControl from MainWindow in WPF -

javascript - How to name a jQuery function to make a browser's back button work? -