Sav
#1
In my view I have this test…
<%= link_to_remote(‘AJAX Alert’, :url => ‘/sandbox/submit’, :success
=> ‘alert(request.responseText)’) %>
In my controller, this works and outputs “AJAX Response”…
def submit
render :layout => false
end
But if I add the respond_to block, the format.js never gets
recognized…
def submit
respond_to do |format|
format.js {
render :layout => false
}
format.any(:html, :mobi, :touch) {
# render normal layout
}
end
end
Sav
#2
On 15 March 2010 20:45, Sav [email protected] wrote:
}
end
end
I am a bit outside my comfort zone here, but should that be :url =>
‘/sandbox/submit.js’ above if you want to specify format.js in
respond_to
Colin
Sav
#3
Ahha! That works, and I found my problem was due to my
application_controller’s before_filter…
before_filter :detect_request
def detect_request
if request.subdomains.first == ‘iphone’
request.format = :iphone
end
end
I have to change my respond to use format.any(:js, :touch)
Thanks!
Sav
#4
Got it!
headers[“Content-Type”] = “text/javascript”
render :action => ‘submit.js.rjs’
Whew.
Sav
#5
Shit, this is exactly the same problem but it went unsolved…
http://www.ruby-forum.com/topic/183367#806585
RJS seems to be a problem when setting up iphone mime-types…
Mime::Type.register_alias “text/html”, :iphone