我有一个非常漂亮的bootstrappy表单(在rails& HTML中)
<%= form_for(current_user) do |f| %>
<div class="input-group input-group-lg">
<%= f.text_field :location, :class => "form-control", :placeholder => "Where are you?", 'aria-describedby' => 'basic-addon2' %>
<span type="submit" name="commit" class="input-group-addon btn btn-success" id="basic-addon2" style="color: white;">Go!</span>
</div>
<% end %>
但是使用上面的内容,当我点击&#34; Go!&#34;按钮。
如果我使用代码,我可以让我的表单成功提交:
<%= form_for(current_user) do |f| %>
<div class="input-group input-group-lg">
<%= f.text_field :location, :class => "form-control", :placeholder => "Where are you?", 'aria-describedby' => 'basic-addon2' %>
<%= f.submit "Go!", class: "input-group-addon btn btn-success", id: "basic-addon2", style: "color: white;" %>
</div>
<% end %>
我的问题是我在合并两个版本时遇到了麻烦,即在添加后者的功能的同时保留了前者的美感。我试图在跨度或其他奇怪的组合中按钮或按钮内安排的每一种方式,没有任何设法做我想要的。我可以使<span>
和<button>
(由f.submit生成)的属性完全相同,我浏览器看到的HTML的唯一区别是一个是<span>
和另一个是<button>
。
有人可以想办法合并这两个概念吗?
答案 0 :(得分:0)
你发现你不能在span或者某个东西中使用链接,因为这个提交按钮可以通过浏览器作为post方法。而链接进入get方法。但是有一个解决方案,任何元素都可以作为提交按钮使用,只需按照此说明进行操作.. Submit Rails 4 form with link instead of button
答案 1 :(得分:0)
单击submit
标记时,您始终可以触发span
事件:
# Inside your document.ready function in your .js file
$('#my_span').on('click', function() {
$('#my_form').submit();
});
一种hacky方式,但它有效。