我有一个奇怪的情况发生在一个页面上,我的<form>标记立即被关闭,留下表单的内容,没有用。
以下是基本的ERB:
<%= form_for(@review) do |f| %>
<%= render 'apply/review_form', :locals => {:f => f} %>
<%= f.text_field :notes %>
<% end %>看起来很简单,对吧?我已经尝试过partial本身;text_field本身;使用form_tag的另一个版本,但都不起作用。
HTML如下所示:
<div id="reviewContainer">
<form accept-charset="UTF-8" action="/reviews" class="new_review" id="new_review" method="post">
</form>
<div style="margin:0;padding:0;display:inline">
<input name="utf8" type="hidden" value="✓">
<input name="authenticity_token" type="hidden" value="dJSuLMfhBSVKAM3Buwe1NjtBedSLQl062/+oliGbBfE=">
</div>
<input id="review_notes" name="review[notes]" size="30" type="text">
<div class="clear"></div>
</div>有什么想法吗?它看起来如此简单,我不明白为什么它不能工作!
可能有用的信息
此表单不是页面上唯一的表单,它包含在可滚动的JQuery工具中。
发布于 2012-09-11 06:53:33
我遇到了这个问题,并把它解决了。对我来说,这是因为我在一个无效的地方呈现表单。具体地说,我有一些这样的内容:
<table>
<tr>
<td>
Stuff I might want to edit
</td>
<div style="display: none">
<%= form_for thing_i_might_want_to_edit %>
...
<% end %>
</div>
</tr>
</table>将隐藏的div (以及其中的表单)移动到标记中解决了这个问题。
发布于 2011-05-23 17:11:57
您使用的是什么版本的Rails?因为2.3.2之前的form_for没有返回值
<% form_for(@review) do |f| %>请注意开头缺少"=“!
发布于 2015-01-07 11:22:02
我解决这个问题的方法是在结尾处添加submit按钮,并使该按钮不显示。
<%= submit_tag('',style: 'width:0;height:0;display:none;') %>
<% end %>这会将结束标记放在我需要的地方。
https://stackoverflow.com/questions/6095076
复制相似问题