Hola:
Hay elementos que no suelen crearse adecuadamente, dependiendo de los navegadores, tal como estás notando, y una de las razones (tal vez "LA" razón) es que no asignan el atributo name... claro que sin un name los elementos no se envían.
Mi solución, es en vez de crear nuevos elementos de formularios, clono alguno existente con ese atributo bien definido. No hace falta que pertenezca a ningún formulario, simplemente tenerlo oculto.
Saludos