水豚:我如何填写一个input字段的ID

我有这个:

<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> 

我如何通过ID填写该字段?

fill_in接受id作为第一个参数:

 fill_in 'course_group_courses_attributes_2_name', :with => 'some text' 

你也可以这样做:

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

fill_in接受没有#符号的id,我首先发现混淆。 另外请注意,如果您的input字段处于模式,您可能需要等待转换或淡入,才能填写字段。

如果您使用的是simple_form gem,那么您必须注意它会自动为您的表单元素添加id,因此您自己手工添加元素是徒劳的!

有; 然而,simple_form遵循id表单元素的命名约定。

 object_attribute 

所以,如果你填写的信息,让我们说一个联系对象如下:

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

然后,simple_form将自动生成每个表单元素的id,如下所示:

 id="contact_first_name" id="contact_last_name" 

现在你可以简单地使用这个命名约定来满足你所有的fill_in需求。 希望这可以帮助。