/ / Rails - Wie man js in einer HTML-Antwort rendert - Ruby-on-Rails, Ajax, partiell

Rails - Wie man js in einer HTML-Antwort rendert - ruby-on-rails, ajax, partially

Ich habe eine Aktion "index", die, wenn sie über Ajax aufgerufen wird, index.js rendert, was einen Teil rendert:

$("#content").html("<%= escape_javascript(render :partial => "index") %>");

Wie mache ich dasselbe in der HTML-Antwort? Ich habe es versucht:

format.html { render "index.js" }

Und obwohl ich keine Fehler bekomme, scheint der js-Code nicht zu laufen, weil der Teil nicht gerendert wird.

Antworten:

0 für die Antwort № 1

Haben Sie versucht, das Skript einzuschließen? <script> Etikett?

Ihre index.html.erb würde so aussehen:

<script type="text/javascript">
$("#content").html("<%= escape_javascript(render :partial => "index") %>");
</script>

-1 für die Antwort № 2

Das Standard-Rendering ist eine Verknüpfung für render :action => :action_name. Um einen Dateisystempfad anzugeben, verwenden Sie render :file => "index.js"