2012-03-22 6 views
1

정말 죄송합니다.이 접근 방법에 대해 알지 못합니다. 나는 클릭 할 때 동적이기는하지만 액세스 방법은 작동하지 않기 때문에 배열 인 요소의 총량을 계산합니다.javascript를 사용하여 동적 양식으로 요소에 액세스하려면 어떻게해야합니까?

function addRow(tableID) { 
    var table = document.getElementById(tableID); 
    var rowCount = table.rows.length; 
    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; 

     switch(newcell.childNodes[0].type) { 
      case "text": 
       newcell.childNodes[0].value = ""; 
       break; 
      case "checkbox": 
       newcell.childNodes[0].checked = false; 
       break; 
      case "select-one": 
       newcell.childNodes[0].selectedIndex = 0; 
       break; 
     } 
    } 
} 

function deleteRow(tableID) { 
    try { 
     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) { 
        alert("Cannot delete all the rows."); 
        break; 
       } 
       table.deleteRow(i); 
       rowCount--; 
       i--; 
      } 
     } 
    }catch(e) { 
     alert(e); 
    } 
} 

를하고 난이 동적 항목으로 첨가했다 :

<tr>        
    <td>Items</td> 
    <td style="text-align:left;"> 
     <INPUT type="button" value="Add New Item" onclick="addRow('dataTable')" /> 
     <INPUT type="button" value="Delete Item" onclick="deleteRow('dataTable')" /> 
     <TABLE id="dataTable" width="350px" > 
      <TR> 
       <TD><INPUT type="checkbox" name="chk[]"/></TD> 
       <TD> 
        <select name="ItemNo[]" id="select" value="ItemNo" > 
         <?php   
          $sql2="select * from jewelry_system.item where NumStored !='0' order by ItemName asc"; 
          $result2 = mysql_query($sql2); 
               while($row2=mysql_fetch_array($result2)){ 
         ?> 
         <option value="<?php echo $row2['ItemNo']?>:<?php echo $row2['SalePrice']?>"> <?php echo $row2['ItemName'];?> [ Php <?php echo $row2['SalePrice'];?> Stocks Left:<?php echo $row2['NumStored'];?> ]</option>               <?php } ?> 
         </select> 
       </TD> 
      </TR> 
     </TABLE >   
    </td>           
</tr> 

및 의해

내 ITEMNO 값 아지트 판매 Priceof 분리해서이 함수를 사용하여 여기

추가 및 삭제 제 자바 스크립트이고 항목 및 그 다음에 myfunction이 합산되는 것은 checktotal()입니다.

function findexts(f){ 
    f=strtolower(f); 
    exts=split('[/\\:]', f); 
    n=count(exts)-1; 
    exts=exts[n]; 
    return exts; 
} 
function checkTotal(){ 
    var total = 0; 
    var temp = 0; 
    var itemArray = document.trans.ItemNo; 

    for(var i=0;i<itemArray.length;i++){ 
     temp = findexts(itemArray[i].value); 
     total += temp; 
    } 
    alert("Total Payment: "+total); 
} 

누군가가 시간을 허락 해줄 수 있습니까? 정말 필요합니다. 고마워요

답변

0
function checkTotal() 
{ 
    var total = 0; 
    var parts = null; 

    // Your select input has an ID of "select", so this will iterate through each option 
    $('#select option').each(function() { 
     // The Item # and Sale Price are separated by a colon (:) 
     parts = $(this).val().split(':'); 

     // Increment the total with the Sale Price of each item 
     total += parseFloat(parts[1]); 
    }); 

    alert("Total Payment: "+total); 
} 
//also The item $ will iterate so try this 
// The Item #,$ and Sale Price are separated by a colon (:) 
     parts = $(this).val().split(':'); 

     // Increment the total with the Sale Price of each item 
     total += parseFloat(parts[1]); 
    }); 

    alert("Total Payment: "+total); 
} 
+0

내 접근 방법은 괜찮습니까? 이 부분은 입니다. var itemArray = document.trans.ItemNo; ??? since formitsnameis ItemNo [] –

+0

나는 document.trans를 사용해 본 경험이 없으므로 그 부분을 나갔다. 일부 jQuery로 답변을 업데이트하여 select 옵션 값을 검색합니다. – augustknight

+0

죄송합니다. 해당 파생 항목은 파생 상품으로 10 진수 가격으로 판매되어야합니다. 그것도 업데이 트됩니다. – augustknight

관련 문제