我正在使用简单的表单和jquery selextbox。一切都运行正常,除了JavaScript错误消息(提交表单之前)显示不显示在选择框旁边,但是在页面的左上角(在后面的按钮旁边,甚至认为表单是正确的)在页面中间)。我知道它与选择框有关,因为如果我删除选择框,则会在正确的位置显示错误消息。这是我的表单代码:
<%= simple_form_for(resource, :url => registration_path(resource_name)) do |f| %>
<div class="custom-select">
<%= f.input :type, collection: ["Student", "Employer"],
include_blank: "What are you?", required: true, label: false, %>
</div>
<% end %>
这是javascript:
$('.custom-select select').c2Selectbox();
以下是没有选择框的生成的html:
<div class="input select required user_type">
<select id="user_type" class="select required" required="required"
name="user[type]" aria-required="true">
<option value="Student"></option>
<option value="Employer"></option>
</select>
</div>
这是使用selectbox生成的html:
<div class="custom-select">
<div class="input select required user_type">
<select id="user_type" class="select required c2-sb-enabled" required="required" name="user[type]" aria-required="true" style="display: none;">
<option value=""></option>
<option value="Student"></option>
<option value="Employer"></option>
</select>
<div class="c2-sb-wrap">
<div class="c2-sb-inner-wrap">
<div class="c2-sb-text" style="width: 64px;"></div>
<a class="c2-sb-button" href="#"></a>
</div>
<div class="c2-sb-list-wrap" style="min-width: 382px;">
<ul class="c2-sb-list"></ul>
</div>
</div>
</div>
</div>
如何将错误消息移动到字段中,默认情况下,简单表单通常会将其置于字段中?