Carpincho: ¿Cómo completo un campo de entrada por su ID?

88

Tengo esto:

<input class="string optional" 
    id="course_group_courses_attributes_2_name" 
    name="course_group[courses_attributes][2][name]" 
    placeholder="Lengua" 
    size="15" 
    type="text" />
</div> 

¿Cómo completo ese campo por su ID?

Nerian
fuente

Respuestas:

126

fill_in acepta la identificación como primer parámetro:

fill_in 'course_group_courses_attributes_2_name', :with => 'some text'
raidfive
fuente
9
Eso pensé, pero no está funcionando. Parece que no lo llena. No da ningún error sobre no encontrarlo. Simplemente no lo llena.
Nerian
Tal vez pueda incluir el código de capibara en cuestión y cualquier otro código relacionado.
raidfive
Descubrí que el problema estaba en Mongoid. Liberar errores de candidatos.
Nerian
@Nerian, ¡ah! me alegro de que lo hayas descubierto
raidfive
¿Tenemos la solución?
Zakos
32

También puedes hacerlo con:

find('Id or class here').set('some text')
usuario2322409
fuente
7

fill_inacepta id sin el símbolo # que encontré confuso al principio. También tenga en cuenta que si su campo de entrada está en un modal, es posible que deba esperar la transición o aparecer gradualmente antes de que se pueda completar el campo.

Strangegroove
fuente
4

Si está utilizando la gema simple_form , debe tener en cuenta que identifica automáticamente los elementos de su formulario, por lo que identificar manualmente los elementos es inútil.

Ahi esta; sin embargo, una convención de nomenclatura que sigue simple_form para identificar elementos de formulario.

object_attribute

Entonces, si está completando información para, digamos, un objeto de contacto de la siguiente manera:

= simple_form_for @contact do |f|
  = f.input :first_name
  = f.input :last_name

simple_form generará automáticamente identificadores para cada elemento del formulario, respectivamente, de la siguiente manera:

id="contact_first_name"
id="contact_last_name"

Ahora puede simplemente hacer uso de esta convención de nomenclatura para satisfacer todas sus necesidades de relleno. Espero que esto ayude.

moeabdol
fuente