Domanda

Lungo le righe simili come la mia ultima domanda: Problemi con HTML sfuggito nel file .js.erb

Sto cercando di rendere il modulo di seguito nel tutorial dei Rails, ma mi sfuggirò di nuovo HTML. Ci sono trucchi simili?

$ ("#< %=" follow_form#{@tag.id} " %>"). Html ("< %= Escape_JavaScript (Render ('Tags/Follow' ,: Tag => @tag)) %>") ;

ottengo

<form accept-charset=UTF-8 action=/tag_user_relationships/76 class=edit_tag_user_relationship data-remote=true id=edit_tag_user_relationship_76 method=post><div style=margin:0;padding:0;display:inline><input name=utf8 type=hidden value=&#x2713; /><input name=_method type=hidden value=delete /><input name=authenticity_token type=hidden value=goedvibRxKtDRiAufp1ThWJP0rRBU2cMH2xp7qodKws= />div> <div class=actions><input id=tag_user_relationship_submit name=commit type=submit value=Unfollow />div>form>

Quando voglio solo ottenere un pulsante di invio diverso.

Codice per la vista:

<%= form_for current_user.tagUserRelationships.build(:tag_id => tag.id),
             :remote => true do |f| %>
  <div><%= f.hidden_field :tag_id %></div>
  <div class="actions"><%= f.submit "Follow" %></div>
<% end %>

Ho continuato a studiare. Se lo aggiungo invece:

$ ("#< %=" follow_form#{@tag.id} " %>"). html ("< %= escape_javascript (render ('tags/fowle' ,: tag => @tag)). html_safe %> ");

Ottengo il modulo appropriato da apparire, ma:

Div> pulsante Div> Form>

Invece di giusto

pulsante

È stato utile?

Soluzione

Prova quanto segue:

$("#<%= "follow_form#{@tag.id}" %>").html("<%= escape_javascript("#{render 'tags/follow'}").html_safe %>");

Con la differenza chiave che la tua chiamata di rendering è all'interno del "#{}". Senza di essa, il parziale ha rimosso tutte le singole citazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top