2011-04-23 156 views
3
http://localhost:3000/users?utf8=%E2%9C%93&search=aen 

这是我的看法形式:用GET提交表单时,不要在查询字符串的隐藏字段

<% form_tag users_path, :method => 'get', :html => { :class => 'ui-form' } do %> 
    <div class="ui-input ui-input-search"> 
     <%= text_field_tag :search %> 
    </div> 
    <% end %> 

生成一个隐藏字段,被提交:

<div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓"></div> 
+1

看看他的问题http://stackoverflow.com/questions/3222013/what-is-the -snowman-PARAM合导轨-3-形式换/ 3348524#3348524 – 2011-04-23 07:20:22

回答

5

在您不想提交的字段上设置disabled属性。

或者是真正的问题,关于如何让钢轨不创建隐藏领域的第一个地方?

0

这可以用JS完成,如果你使用form.serialize()删除不需要的部分参数,并用新的参数进行新的获取请求

0

您可以尝试在onsubmit功能做这样的事情:

document.getElementsByName('utf8')[0].disabled = "disabled"; 

,以防止它被发送。

0

这里有一个jQuery的片段 - 把它添加到您的布局禁用UTF8领域中所有的GET形式

:javascript 
     $('form[method=get] input[name=utf8]').attr("disabled", "disabled"); 
相关问题