2009-07-16 10 views
1

Ich hatte eine vorherige Frage, die dieses Thema berührt (Rails: how to get value from another field when executing an onchange remote function in textfield), aber dann dugg ich ein wenig tiefer und erkannte, dass mein Problem die Datetime_select-Methode ist.Wie bekomme ich den Wert eines Datetime_select-Feldes mit Javascript in Ruby auf Schienen

Ich habe ein Textfeld mit onchange. In der onchange muss ich den Wert eines datetime_select-Feldes erhalten, um als Parameter übergeben zu werden, wenn ich den Ajax-Aufruf an meinen Controller mache. Das erste, was zu beachten ist, ist, dass ein datetime_select tatsächlich aus fünf dropdowns (Jahr, Monat, Tag, Stunde und Minute) besteht, also muss ich die Werte jedes von ihnen separat bekommen (ich nehme an, gibt es einen einfacheren Weg?) . Aber wenn ich versuche, wie ihren Wert mit Code zu erhalten:

$(model + '_' + attribute + '_3i').value 

, die den Wert des „Tag“ Drop-Down-zurückgeben sollten bekomme ich einen Fehler: „Typeerror: $. (“ Model_attribute_3i ") value.toS ist nicht eine Funktion "

Wenn ich alle Dropdowns für die Datetime-Objekte manuell erstellen, funktioniert derselbe Aufruf einwandfrei. Es scheint also etwas Magie in der Art und Weise zu geben, wie ein datetime_select zusammengesetzt ist, das mich davon abhält, den Wert der Dropdowns zu fragen. Gibt es eine Möglichkeit, dies zu umgehen oder muss ich nur die Funktion datetime_select in meiner Anwendung neu codieren?

+0

können wir einen Code für den Kontext haben. aber auf den ersten Blick sieht es so aus, als würde Ihr Concat die Variablen nicht ersetzen – AutomatedTester

Antwort

0

Problem scheint für jetzt gelöst zu sein, Problem war ich ein Javascript n00b ... anscheinend verwendete ich dieselben variablen Namen in zu vielen Plätzen, die zu merkwürdiges Verhalten führten.

Verwandte Themen