开发者

Rails submit button not working in Internet Explorer

Bizzarre issue I've been working that is beyond frustrating. The submit button on one of my edit views is not working in Internet Explorer. It is a pretty standard layout using input type = submit (not a customized button_to or something).

  • The button works fine in Safari, Chrome, and Firefox on both Mac and Windows.
  • Edit submit buttons work fine on other pages in IE
  • Using nested_form_for, with :html => {:multipart => true}

Submit button <%= f.submit("update", :class=>"post_button")%>

Has anyone had issues with submit buttons not working in IE?

== update ==

Updated jQuery to make sure it wasn't a nested_form issue. I actually think the link may be not been working before I added the nested form. However, it has always been a multipart form.

View

 <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%>


I just found a similar issue in my non-MVC application, in IE8 and below. When enter is used, the server-side click handler for the submit button wasn't being executed. The problem was that IE doesn't POST the submit button when enter is used (but does when it is clicked). So, .NET knows it's a post back, but not what control caused it.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜