2016-09-18 1 views

Antwort

1

mit endete ich mit bis HTML5 Data Attributes

Ich habe eine div mit data-* Attribute wie folgt:

<%= tag("div", class: 'hidden-user-information', data: { 
    intercom_app_id: ENV['INTERCOM_APP_ID'], 
    user_id: current_user.id, 
    user_name: current_user.profile.name, 
    user_email: current_user.email, 
    user_created_at: current_user.created_at.to_i 
    }) %> 

Und jQuery verwenden, ich diese in meinem Javascript zugegriffen werden: $('div.hidden-user-information').data('intercom-app-id');

3
  • Halten Sie Ihre Javascript-Dateien in der App/assets/Javascripts Ordner

  • Ihrer Ansicht von Dateien verwenden Sie versteckte Felder für die Daten, die Sie Javascript

  • in Ihrem JavaScript-Dateien übergeben möchten dass die Daten finden, die von $("#name_of_hidden_field")

+0

Versteckte Felder aus Formularen? Ich möchte keine Formulare in meine App einbetten:/ – amingilani

+0

Warum nicht? Es macht nichts anderes als dort zu sitzen. @amingilani bietet ungefähr die gleiche Lösung, außer mit 'Daten'-Attributen. –

+0

@AlexanderLozada Formen implizieren Eingabe. IMHO ein Datenattribut war eine viel elegantere Art, damit umzugehen. Obwohl der kanonische Weg wäre, die Daten in das body-Tag zu schreiben, ist es viel besser lesbar, den 'tag_helper' zu verwenden. – amingilani

Verwandte Themen