Eeehm..........
Algunas correcciones a lo que puso prueba2306:Todo navegador que se precie de usar la funcion getElementById() , es compatible con el manejo del DOM, por lo tanto también acepta la función appendChild(), con lo cual si el navegador no acepta la primera, tampoco acepta la segunda. Obvio que esto es lo ideal, no se si algún navegador usa solo una de estas, pero no debería hacerlo ya que ambas entran en las especificaciones del DOM según la W3C..
para el código que puso prueba2306, te diría que pruebes lo siguiente:
if(document.getElementById){
document.getElementById("dinamicos").innerHTML+= '<input name="producto" />';
}
El problema de este código, es que si le pones un valor al campo producto (me refiero a ponerlo en el formulario, no en el codigo). Cuando vuelvas a ejecutar el código, borrará dicho valor dejando el campo vacío de nuevo.
Usando appendChild :Esto es un poco más complicado y lleva más código, pero es lo ideal y no borra el valor del campo. No voy a explicar el código, porque me llevaría un rato largo, si no llegas a entender, avisa e intentaré explicarlo un poco.
function agregar(){
if(document.getElementById && document.createElement){
var dinamicos = document.getElementById("dinamicos");
var input = document.createElement('INPUT');
input.name = 'producto';
dinamicos.appendChild(input);
}
}
Espero que te sirva.
Altareum.