Hi All,
I solved my problem. The working copy of my solution is showed below.
Sample usage on onChange event of each Quantity[] input:
CalculateColumns('Table1', 'UnitPrice[]', 'Quantity[]', 'Price[]', 'TotalPrice')
Code:
<script language="javascript">
function CalculateColumns(ContainerID, Col1, Col2, Col3, GrandTotalID) {
if( typeof ContainerID == 'string' ) var ContainerID = document.getElementById( ContainerID );
var arrCol1 = new Array();
var arrCol2 = new Array();
var arrCol3 = new Array();
var GrandTotal = 0;
var ContainerIDElements = new Array( 'input');
//var ContainerIDElements = new Array('input', 'textarea', 'select');
for( var i = 0; i < ContainerIDElements.length; i++ ){
els = ContainerID.getElementsByTagName( ContainerIDElements[i] );
for( var j = 0; j < els.length; j++ ){
if(els[j].name == Col1) arrCol1.push(els[j]);
if(els[j].name == Col2) arrCol2.push(els[j]);
if(els[j].name == Col3) arrCol3.push(els[j]);
}
}
for( var j = 0; j < arrCol1.length; j++ ) {
arrCol3[j].value = Number(arrCol1[j].value) * Number(arrCol2[j].value);
GrandTotal += Number(arrCol3[j].value);
}
document.getElementById(GrandTotalID).value = GrandTotal;
} // CalculateColumns
</script>
Bookmarks