Rails提交按钮在Internet Explorer中不起作用

时间:2011-09-28 02:51:16

标签: ruby-on-rails-3 internet-explorer submit

Bizzarre问题我一直在努力,这令人沮丧。我的某个编辑视图上的“提交”按钮在Internet Explorer中不起作用。这是一个非常标准的布局,使用input type = submit(不是自定义的button_to或其他东西)。

  • 此按钮适用于Mac和Windows上的Safari,Chrome和Firefox。
  • 编辑提交按钮在IE中的其他页面上正常工作
  • 使用nested_form_for,使用:html => {:multipart =>真}

提交按钮 <%= f.submit(“update”,:class =>“post_button”)%>

是否有任何提交按钮无法在IE中运行的问题?

== update ==
更新了jQuery以确保它不是nested_form问题。我实际上认为在添加嵌套表单之前链接可能没有工作。但是,它一直是多部分形式。

视图

 <head>
<%= stylesheet_link_tag 'profile' %>
    <%= javascript_include_tag "jquery.min", "nested_form"  %>
</head>
<%= nested_form_for(@profile, :html => {:multipart => true}) do |f| %>
<div class="content">
    <div class="editprofilesub">
    <div class="profile_title"> basic </div>
        <table>
            <tr>
                <td class="profileformright"> 
                    <%= f.label :firstname, "First Name" %>
                </td>
                <td class="profileformleft">
                    <%= f.text_field :firstname, :class => "profilefield", :class=>"profilefield"  %>
                </td>
            </tr>
            <tr>
                <td class="profileformright">       
                    <%= f.label :lastname, "Last Name" %>
                </td>
                <td class="profileformleft">                
                    <%= f.text_field :lastname, :class => "profilefield"   %>
                </td>
            </tr>
            <td class="profileformright">       
                <%= f.label :avatar, "User Image" %><br>
            </td>
            <td class="profileformleft">    
                <i>Please rotate images prior to uploading.</i> <br>        
                <%= f.file_field :avatar%>
            </td>           
            </table>                        

    <div class="profile_title"> location </div>
        <table>
            <tr>
                <td class="profileformright">
                    <%= f.label :city %>
                </td>
                <td class="profileformleft">    
                     <%= f.text_field :city, :class => "profilefield" %>
                </td>
            </tr>
        </table>
        <br>
            <table> 
                <tr>
                    <td class="profileformright">               
                <%= f.label :state, "State"  %>
                    </td>
                    <td class="profileformleft">
                <%= f.select :state,  Carmen.state_names(),{}, :class=> "state" %>
                </tr>
            </table>
            <div class="profile_title"> about </div>
            <table> 
                <tr>
                    <td class="profileformright">
                        <%= f.label :bio, "about" %>
                    </td>
                    <td class="profileformleft">
                        <%= f.text_area :bio, :rows => '5', :cols => '60', :class => "profilefield"   %><br>
                    </td>
                </tr>
        <tr>
            <td class="profileformright">
                <%= f.label :dob, "Date of Birth" %>
            </td>
            <td class="profileformleft">
            <%= f.date_select :dob,
                {:start_year => Time.now.year,
                  :end_year => 1900,
                                 :order => [:month, :day, :year]}%>
            </td>
        </tr>
        </table>
    </div>
    <div class="right">
        <%= f.submit("update", :class=>"post_button")%>
    </div>
</div>
<%end%>

1 个答案:

答案 0 :(得分:0)

我刚刚在IE8及以下的非MVC应用程序中发现了类似的问题。使用enter时,提交按钮的服务器端单击处理程序未被执行。问题是,当使用enter时,IE不会发送提交按钮(但是在单击它时)。因此,.NET知道它是一个回帖,但不知道是什么控制导致它。