Überprüfen Sie ViewBag-Wert vorhanden ist, in javascript
Ich bin mit razor template und den folgenden ist das Szenario
$(function(){
//if (ViewBag.IsCallFunction){
somefunction();
//
//do something else
});
Wenn ein viewBag-variable vorhanden ist, d.h. nicht null ist und wenn es auf true gesetzt ist, dann würde ich Sie gerne nenne einige javascript-Funktion. Wie mache ich das?
Du musst angemeldet sein, um einen Kommentar abzugeben.
aber denken Sie daran, dies wird aufgerufen werden, wenn Leistungen pro OP, kann man es nicht nennen, Sie können es machen, so rufen Sie es im inneren zu dokumentieren.bereit, wenn Dokument geladen ist
Aber ich würde empfehlen, Sie mit einem view-Modell statt ViewBag, da in diesem Fall der code kann vereinfacht werden:
Du nicht nennen eine JavaScript-Funktion von Razor-code, weil Razor läuft auf dem server und JavaScript auf dem client ausgeführt wird.
Stattdessen können Sie emittieren JavaScript-code an den client, der dann ausgeführt wird, sobald der browser lädt das HTML-code erzeugt von Razor.
Könnten Sie etwas tun, wie
ViewBag.IsCallFunction
ist nie ein Wert zugewiesen, in die controller-action rendering dieser Ansicht. Es ist einer der Millionen Gründe, warum sollte man nicht verwenden ViewBag, aber das anzeigen von Modellen statt. Nicht zu erwähnen, dass Ihr Beispiel wird eine exception zur Laufzeit, weil es keine solche variable$
in C#. Sie müssen wickeln Sie Ihre javascript-code innerhalb<text>
- tags siehe meine Antwort.