我正在开发一个 Ruby on Rails 4 项目,我正试图在form_for 中使用 jQueryUI方法show with blind effect。这里的问题是我的表单将按预期显示,但效果将无法正常工作。当我选中复选框时,最终会出现目标div,但是会以一种奇怪的方式出现:首先会在其位置弹出一些空白区域,并且在1秒后将显示整个div及其内容< /强>
这是我的html.erb
<%= form_for(@reserva) do |f| %>
<% if @reserva.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@reserva.errors.count, "error") %> prohibited this reserva from being saved:</h2>
<ul>
<% @reserva.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="span12 field-box">
<%= f.label :cliente_id %>
<% clientes_array = Cliente.all.map { |cliente| ["#{cliente.nombre} #{cliente.apellido}", cliente.id] } %>
<%= f.select(:cliente_id, options_for_select(clientes_array)) %>
</div>
<div class="span12 field-box">
<label >Cliente Nuevo?</label>
<%= check_box_tag 'con_cliente', 'ClienteNuevo', false %>
</div>
<div id="cliente_form">
<%= f.fields_for :cliente, @cliente do |cliente_builder| %>
<div class="span12 field-box">
<label>Nombre:</label>
<%= cliente_builder.text_field(:nombre, class: "span9") %><br />
</div>
这里的javascript:
<script type="text/javascript">
$(document).ready(function(){
$("#cliente_form").hide();
$("#con_cliente").bind('change', function(){
if($(this).is(':checked')){
$("#cliente_form").show("blind");
}
else{
$("#cliente_form").hide("blind");
}
});
});
</script>
有什么想法吗?
答案 0 :(得分:0)
最后我解决了这个问题,问题是bootstrap和jquery-ui之间存在冲突,效果不能按预期显示。