2011-04-24 10 views
23

Esto debe ser algo completamente estúpido que he hecho o estoy haciendo, pero tengo una entrada con un atributo de valor que simplemente no se está mostrando:El valor de entrada no se visualiza. ¿Cómo es eso posible?

<div class="input text required"> 
    <label for="Product0Make">Make</label> 
    <input name="data[Product][0][make]" type="text" maxlength="255" value="AC Make" id="Product0Make"> 
</div> 

Alguien ha visto esto antes? ¿Tengo algún tipo de error tipográfico al que simplemente estoy ciego? Por lo que puede valer la pena, aquí está el código de CakePHP que está generando esta línea:

<?php echo $this->Form->input('Product.' . $index . '.make', array('default' => $product['Product']['make'])) ?> 

Tengo un pequeño formulario con un puñado de entradas de texto, 1 área de texto y 2 selecciones. No se muestra ninguno de los valores de entrada de texto, pero todo lo demás está bien.

Cualquier pensamiento sería apreciado. Ni siquiera puedo creer que tenga que hacer esta pregunta, pero así de loca me está causando. :-)

+0

supongo que el problema sigue siendo el mismo si se quita todos los 'class'es de este div? – Brad

+0

Puedo creer que estás haciendo esta pregunta, ya que es un comportamiento muy extraño. Para hacerlo aún más misterioso, SI funciona en mi PC. ¿Intentó reiniciar su computadora? :) –

+0

@Brad - lo hace. –

Respuesta

65

Argh. Yo sabía esto iba a ser algo más que estúpido. Hubo un poco de Javascript que borraba datos. El claro fue útil en otros lugares, pero no sabía que se estaba ejecutando, así que fue un doloroso localizarlo. Una vez que evité la limpieza en este escenario, mis valores realmente aparecieron. Debido a que estaba mirando el código en el inspector web, supuse que sería una vista "en vivo", pero supongo que no es del todo cierto.

Gracias por su ayuda, a todos. Disculpas por la locura. Estaba perdiendo la cabeza por un tiempo allí.

+1

Felicitaciones por resolver su problema. Debes aceptar tu propia respuesta si has resuelto tu propia pregunta. – mc10

+0

Me acabo de dar cuenta de esto yo mismo. Pensé que me estaba volviendo completamente loco ... el valor se había ido, y no se podía agregar en ningún escenario. Pasé horas yendo hacia atrás. WOW cerebro es brindis ahora –

+1

Haha. Gracias por la pregunta y la respuesta. Fue el mismo problema. – ecairol

1

¿Está confundiendo los usos de los parámetros 'predeterminado' y 'valor' para $ html-> input()?

Si está utilizando 'default' => $product['Product']['make'] y $ this-> data is presente, el campo no se completará. El propósito del parámetro 'predeterminado' es mostrar un valor predeterminado cuando no hay datos de formulario ($ this-> data).

Si desea forzar la visualización de un valor, debe usar el parámetro 'valor' en su lugar. 'value' => $product['Product']['make']

+0

En realidad, he intentado ambos, en este caso. –

2

Para mí fue recordada por el navegador. Cambiar la cadena de URL o borrar el historial puede ayudar.

+0

Mismo aquí en FF 45.0 –

8

mina estaba relacionado con AngularJS

yo estaba tratando de poner tanto un valor de HTML y un ng-Modelo, pensando que el ng-Modelo sería por defecto a la del valor, porque yo era demasiado perezoso para agregue el modelo al $ scope en el controlador ...

Así que la respuesta fue asignar ese valor predeterminado a $ scope.variable en el controlador.

+1

Resuelto mi problema, soy tonto, gracias. – xoxel

+0

gracias señor! esto resolvió mi problema –

0

tengo el mismo problema.

cambie el valor de las JS es un trabajo para mí

no sé qué.

si cualquiera sabe entonces PLZ me dejó saber qué

[email protected] 

document.getElementById("collage").value="Collage";
<input type="text" id="collage" name="collage" class="form-control" >

+0

¿Has leído la respuesta aceptada? Mientras leía la pregunta, esto fue lo que pensé que era el problema, y ​​fue eso. De lo contrario, no veo ningún atributo de "valor" en la etiqueta ENTRADA y si no es así, deberá hacer su propia pregunta. –

Cuestiones relacionadas