Einstellung razor Variablen in javascript
Ich versuche zu ordnen einem Rasiermesser variable mit dem Inhalt einer ComboBox auf meinem Formular innerhalb einer javascript-Funktion. Etwa so:
<script type ="text/javascript">
<!--
function SomeFunction() {
var hours = document.getElementById("Hours");
var task = document.getElementById("TaskType_ID");
@{
var tsk = @:task.value;
}
@{
<text>
hours.value = '@ViewBag.TaskTypes.GetHours(tsk)';
</text>
}
return true;
}
//-->
</script>
die Zeile (und jede andere Variante, die ich ausprobiert habe)
var tsk = @:task.value;
führt zu einer Fehlermeldung.
Was ist ein "razor-variable"?
Ok, Sie mischen client (javascript) und server - (asp.net / razor) Technologien hier, und es ist nicht zur Arbeit zu gehen, in etwas wie das Formular, das Sie versuchen. Sie müssen, um die Lücke mit AJAX. Bin ich richtig in der Annahme, Sie haben zwei comboboxes, und Sie wollen die Optionen in den Stunden combobox zu ändern, wenn der Benutzer wählt eine option aus der Aufgabe Kombinationsfeld?
Razor ist die neueste syntax-engine für die Erstellung von Seiten in asp.net mvc-3.
Chris - wie Sie sagen, die OP braucht, um separate server-code von client-code und sollte angeben, das Ergebnis zu erzielen, nicht nur posten, nicht funktionierenden code.
Hi Chris - ich habe eine combo-box enthält Aufgaben-codes. während die onchange-Ereignis für das Kombinationsfeld, ich möchte zur Berechnung einer Anzahl von Stunden (von ein-Objekt übergeben von der Steuerung) und platzieren Sie diesen Wert in ein Textfeld.
Ok, Sie mischen client (javascript) und server - (asp.net / razor) Technologien hier, und es ist nicht zur Arbeit zu gehen, in etwas wie das Formular, das Sie versuchen. Sie müssen, um die Lücke mit AJAX. Bin ich richtig in der Annahme, Sie haben zwei comboboxes, und Sie wollen die Optionen in den Stunden combobox zu ändern, wenn der Benutzer wählt eine option aus der Aufgabe Kombinationsfeld?
Razor ist die neueste syntax-engine für die Erstellung von Seiten in asp.net mvc-3.
Chris - wie Sie sagen, die OP braucht, um separate server-code von client-code und sollte angeben, das Ergebnis zu erzielen, nicht nur posten, nicht funktionierenden code.
Hi Chris - ich habe eine combo-box enthält Aufgaben-codes. während die onchange-Ereignis für das Kombinationsfeld, ich möchte zur Berechnung einer Anzahl von Stunden (von ein-Objekt übergeben von der Steuerung) und platzieren Sie diesen Wert in ein Textfeld.
InformationsquelleAutor TomDW | 2011-06-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als Chris wies darauf hin, mischen Sie die client-und server-code. Die javascript-client-code, und Sie müssen die Daten vom server, um den Rückgabewert, indem Sie mit der ajax-Aufruf-Funktion(get/post). Hier ist der Codeausschnitt, was Sie über es tun können:
Oder anstelle der Aufrufe an den server jedes mal, wenn Sie eine Aufgabe wählen, können Sie immer die Werte zu speichern der Aufgaben in eine variable. Dank
InformationsquelleAutor Xnake
okay. hier ist, was ich aufgewickelt tun. Ich mich nicht mehr übergeben Sie ein Objekt in der Ansicht. Ich habe ein Skript, dass die Bindung an das change-Ereignis meiner ersten Feld, und dann rief Sie eine Aktion in meinem controller per ajax und setzt das Ergebnis in das zweite Feld ein. Etwa so:
danke für führende mich in die richtige Richtung. Mit allen die razor-syntax, die ich aus den Augen verloren hact, dass dies immer noch html. Ich hoffe, Sie alle genossen, mich versuchen zu Pochen, einen quadratischen Pflock in ein rundes Loch!
InformationsquelleAutor TomDW