Hola el siguiente codigo funciona perfecto en Mozilla Firefox, pero
en internet explorer no funciona parte de la aplicacion.
El script crea elementos table, input, etc dinamicamente, y ademas hace la suma en los campos input Bruto y Retencion y el resultado lo deja en el campo liquido (calculo el cual no funciona en IE).
Código PHP:
<html>
<head>
<STYLE>
#testlayer {
position: absolute;
background: #732264;
color: #ffffff;
font: 16px arial,helvetica;
top: -120px; /* hide it on load */
z-index: 3;
}
</STYLE>
<script type="text/javascript">
var rowNumber = 1;
function delRow(button, Table)
{
var row = button.parentNode.parentNode;
var tbody = document.getElementById(Table).getElementsByTagName('tbody')[0];
tbody.removeChild(row);
}
/**************************************************************/
function Suma(Cantidad, Bruto, Retencion, Liquido, Liquidosimporte)
{
var Valor1 = parseInt(document.getElementById(Cantidad).value);
var Valor2 = parseInt(document.getElementById(Liquido).value);
var Valor3 = 0.9;
document.getElementById(Liquidosimporte).value = parseInt((Valor1*Valor2));
document.getElementById(Bruto).value = parseInt(((Valor1*Valor2)/Valor3));
document.getElementById(Retencion).value = (parseInt(((Valor1*Valor2)/Valor3))-(Valor1*Valor2));
}
function addRow(Table)
{
var aTable = document.getElementById(Table)
aTable.setAttribute("name",Table);
aTable.setAttribute("border",0);
var tbody = document.getElementById(Table).getElementsByTagName('tbody')[0];
tbody.setAttribute('name','TableBody');
var row = document.createElement('TR');
var cells = Array();
var inp = Array();
for (i = 1; i<9; i++){
cells[i] = document.createElement('td');
inp[i] = document.createElement('input');
}
cells[2].setAttribute('width','10px');
inp[1] = document.createTextNode(rowNumber);
inp[2].setAttribute('type','text');
inp[2].setAttribute('name','cantidad['+rowNumber+']');
inp[2].setAttribute('id','cantidad['+rowNumber+']');
inp[2].setAttribute('size','4');
inp[2].setAttribute('maxlength','4');
inp[2].setAttribute('value','1');
inp[2].setAttribute("onKeyUp","Suma('cantidad["+rowNumber+"]', 'bruto["+rowNumber+"]', 'retencion["+rowNumber+"]', 'liquido["+rowNumber+"]', 'liquidosimporte["+rowNumber+"]')");
inp[2].setAttribute('autocomplete','OFF');
inp[3].setAttribute('type','text');
inp[3].setAttribute('name','item['+rowNumber+']');
inp[3].setAttribute('id','item['+rowNumber+']');
inp[3].setAttribute('size','20');
inp[3].setAttribute('maxlength','20');
inp[3].setAttribute('value','');
inp[3].setAttribute('autocomplete','OFF');
inp[4].setAttribute('type','text');
inp[4].setAttribute('name','liquido['+rowNumber+']');
inp[4].setAttribute('id','liquido['+rowNumber+']');
inp[4].setAttribute('size','10');
inp[4].setAttribute('maxlength','20');
inp[4].setAttribute('value','0');
inp[4].setAttribute("onKeyUp","Suma('cantidad["+rowNumber+"]', 'bruto["+rowNumber+"]', 'retencion["+rowNumber+"]', 'liquido["+rowNumber+"]', 'liquidosimporte["+rowNumber+"]')");
inp[4].setAttribute('autocomplete','OFF');
inp[5].setAttribute('type','text');
inp[5].setAttribute('name','liquidosimporte['+rowNumber+']');
inp[5].setAttribute('id','liquidosimporte['+rowNumber+']');
inp[5].setAttribute('size','10');
inp[5].setAttribute('maxlength','20');
inp[5].setAttribute('value','');
inp[5].setAttribute('autocomplete','OFF');
inp[6].setAttribute('type','text');
inp[6].setAttribute('name','retencion['+rowNumber+']');
inp[6].setAttribute('id','retencion['+rowNumber+']');
inp[6].setAttribute('size','10');
inp[6].setAttribute('maxlength','20');
inp[6].setAttribute('value','');
//inp[6].setAttribute('disabled','true');
inp[6].setAttribute('autocomplete','OFF');
inp[7].setAttribute('type','text');
inp[7].setAttribute('name','bruto['+rowNumber+']');
inp[7].setAttribute('id','bruto['+rowNumber+']');
inp[7].setAttribute('size','10');
inp[7].setAttribute('maxlength','20');
inp[7].setAttribute('value','');
//inp[7].setAttribute('disabled','true');
inp[7].setAttribute('autocomplete','OFF');
// remove and Add row buttons
inp[8].setAttribute('type','image');
inp[8].setAttribute('name','RemoveRow.' + rowNumber + '.13');
inp[8].setAttribute('src','minus.jpg');
inp[8].onclick=function(){delRow(this, Table);}
for (i = 1; i<9; i++){
cells[i].appendChild(inp[i]);
row.appendChild(cells[i]);
}
rowNumber++;
tbody.appendChild(row);
}
</script>
</head>
<body>
<form name=Form1 action="index.php" method="post">
<table border="0" id="table1" name="table1">
<input type="button" value="Add Row to table 1" onClick="addRow('table1');">
<tr>
<td><b>Número Linea</b></td>
<td><b>Cantidad</b></td>
<td><b>Item</b></td>
<td><b>Liquido</b></td>
<td><b>Liquido Importe</b></td>
<td><b>Retención</b></td>
<td><b>Bruto</b></td>
</tr>
</table>
<input type="submit" value="Add" name="add" >
</form>
</body>
</html>
gracias y salu2