Ich benutze ein Bootstrap TypeAhead Plugin. Grundsätzlich erwartet es eine json-Antwort, wenn Sie auf eines der Elemente im Dropdown-Menü klicken. Wenn das Objekt angeklickt wird, möchte ich jedoch auf eine andere Seite umleiten; Ich möchte nicht mit Json antworten. Ich weiß nicht, wie ich mit dieser Situation umgehen soll. Das ist, was ich habe:Antwort mit Umleitung auf JSON Anfrage
def populate_global_search
respond_to do |format|
if params[:name] && params[:name][:value]
model = Model.where(name: params[:name][:value]
else
model = nil
end
if model.present?
format.json { redirect_to model }
else
format.json { head :ok}
end
end
end
Die Aktion wird von einem Ajax-Aufruf ausgelöst:
$(element).bind('typeahead:selected', function(obj, datum, name) {
$.ajax({
url: that.format_url(),
data: {
name : datum
}
}).done(function(data){
...
Da die redirect_to kein json Antwort ist, passiert nichts, wenn ich auf den Artikel klicken. Was kann ich tun?
Wie nennt man diese Aktion? –
@ Зелёный Aktion wird von Bootstrap typeahead aufgerufen http://getbootstrap.com/2.3.2/javascript.html#typeahead – Donato
ok, ist einige 'ajax'? Könnten Sie den Code teilen? –