2 button_to functions for file downloads

I have 2 button_to functions that download 2 different files. the first one acts like a submit and the second on actually does downlaod the file. Does anyone know what would cause that?

<%= button_to 'Download PCCIS file', :action => 'downloadpccis' %> <%= button_to 'Download CIS file', :action => 'downloadcis' %>

Anyone have any idea why one button does a submit and the other does a file download?

In general, element behavior in any page is a function of the browser parser's ability to make sense of the code we feed it. Post your code and we might be able to help.

Best regards, Bill

Application.rhtml: <% form_tag( {:action => ‘mltn6p’} ) do -%>

Wendia Site entry Program

Select your Shelf <%= select(:node, :id, $shelves,{:prompt =>'Select Equipment'},{ :onchange => remote_function(:url => { :action => "gotoshelf"})} ) %>
<%= render :partial => 'sitedata' %> Download POB Files <%= button_to 'Download CIS file', :action => 'downloadcis' %> <%= button_to 'Download PCCIS file', :action => 'downloadpccis' %>
<div id="content">
    <div id="notification"> </div>
        <%= yield %>
</div>
<% end %>

controller: def downloadcis send_file(“#{$site.upcase}_CIS.csv”, :type => ‘text/plain’, :disposition => ‘attachment’) end

def downloadpccis
    send_file("#{$site.upcase}_PCCIS.csv", :type => 'text/plain', :disposition => 'attachment')
end

For some reason the first button is giving me this for a response: try { $("notification").update("<h1 style='display: inline' class='mes'>Site 123 was built</h1>"); $("downloads").show(); } catch (e) { alert('RJS error:\n\n' + e.toString()); alert('$ (\"notification\").update(\"<h1 style=\'display: inline\' class=\'mes \'>Site 123 was built</h1>\");\n$(\"downloads\").show();'); throw e }

Anyone have any ideas why the second button works but the first button is giving me the above error?

OK Well this must be a bug I guess but I managed to get it to work.

For some reason the first one was trying to give the js response to the action. So for the hey of it I used 3 button_to's and the bottom two worked while the first one was giving me the same response.

<div style="display: none;"><%= button_to 'Download PCCIS file',   :action => 'downloadpccis' %></div> <%= button_to 'Download PCCIS file', :action => 'downloadcis' %> <%= button_to 'Download PCCIS file', :action => 'downloadpccis' %>

OK Well this must be a bug I guess but I managed to get it to work.

button_to generates a form for you with a button. You've put a button in a form, therefore in the generated html there will be a form nested inside a form which isn't valid html (and also sorts of weird stuff can happen, like the "wrong" form being generated).

Fred