2016-05-28 5 views
2

Ich habe dieses Stück Javascript-Codes in meiner Ansicht Datei zu machen:wie Javascript Warnmeldung angezeigt werden eine Variable von Rails-Controller

<script> 
function hint() { 
    var str = @user.name; 
    var name = str.toLowerCase(); 

    alert(name); 
} 
</script> 

Ich möchte, dass die Warnmeldung angezeigt werden, den Namen des Benutzers, so verwende ich die Variable @user, die in meinem Controller definiert wurde. Wenn ich jedoch auf die Schaltfläche zum Aktivieren der Warnmeldung klicke, wird nichts angezeigt. Ich habe auch current_user.name ausprobiert, aber es hat auch nicht funktioniert. Wie kann ich den Wert einer Variablen in der Alarmbox anzeigen?

Antwort

3

Halten Sie es einfach so, wie in HTML-Datei.

var str = '<%= @user.name %>'; 
+0

danke, es funktioniert! – Marco

1

Sie können auch wie folgt tun:

alert("<%= @user.name.downcase %>"); 
1

Wenn Sie auf eine Schaltfläche haben, dann müssen Sie keinen JavaScript-Code schreiben (vorausgesetzt, ein Bestätigungsdialog für Sie arbeitet). Sie können mit data: {confirm: "#{@user.name.downcase}"} übergeben Ihre Taste/einreichen/link_to Helfer ein Bestätigungsdialog angezeigt:

<%= f.submit 'Save', data: { confirm: "#{@user.name.downcase}" } %> 

Darüber hinaus gibt es Ihnen eine Möglichkeit, Ihre Button/Link klicken, um abzubrechen.

Eine weitere Option ohne JavaScript ist Onclick-Ereignis auf der Schaltfläche/Link zu verwenden:

<%= f.submit 'Save', onclick: "alert('#{@user.name.downcase}');" %> 

oder geben Benutzername als Parameter an Ihrer JavaScript-Funktion:

<%= f.submit 'Save', onclick: "your_function('#{@user.name.downcase}');" %> 
Verwandte Themen