2012-03-24 13 views
1

habe ich Web-App in MVS 3 erstellen aber nicht Warnmeldung angezeigt werden, nachdem die Daten in die Datenbank einfügenWie wird eine Warnmeldung angezeigt, nachdem Daten in die Datenbank eingefügt wurden?

Controller-Code:

[HttpPost] 
     public ActionResult QuestionBank(QuestionBank questionbank) 
     { 
      if (ModelState.IsValid) 
      { 
       dbEntities.QuestionBanks.AddObject(questionbank); 
       dbEntities.SaveChanges(); 
       //questionbank.SendEnquiryEmail(questionbank); 
       ViewData["Message"] = "Data inserted"; 
       return RedirectToAction("QuestionBank"); 

      } 
      return View(questionbank); 
     } 

Gebrauchte Viewdata [ "Message"] = "Daten eingefügt"; die nicht angezeigte Meldung ist :( , was los ist falsch oder ich stellte es woanders ? sonst kann ich diesen Code

<script type="text/javascript"> 
    //i'm using jquery ready event which will call the javascript chunk after the page has completed loading 
    $(document).ready(function() { 
     //assuming that your variable name from the code behind is bInsertSuccess 
     var bSuccess = "<%= myvar %>"; 
     if (bSuccess) { 
      alert("Successfully Inserted"); 
     } 
    }); 
</script> 

haben, aber ich weiß nicht, wo ich das variable myvar erklären die Einfügung plz prüft helfen

+1

Wie verwenden Sie ViewData in Ihrer Ansicht? – nightshifted

+0

Nein bitte demonstrieren – Neo

+0

Ich glaube nicht, dass Sie verstehen, was ViewData wirklich tut. ViewData ist nur ein "Speicher" für Schlüssel/Wert-Paare, mit denen Daten zwischen Controller und Ansicht "transportiert" werden können. Also solltest du ViewData ["Message"] aufrufen. Wenn Sie eine Warnmeldung wünschen, müssen Sie tatsächlich eine Nachricht erstellen. – nightshifted

Antwort

2

Auf Ihrer .chsthml Seite:

<script type="text/javascript"> 
    $(document).ready(function() { 
     var msg = '@ViewBag.Message'; 

     alert(msg); 
    }); 
</script> 

in Ihrer Aktion:

ViewBag.Message = "1"; 

Edit: bedingte Check-in-Skript Anwenden:

<script type="text/javascript"> 
    $(document).ready(function() { 

     var msg = '@ViewData["Message"]'; 
     if(msg=='1') 
     alert("you are done with your thing"); 
    }); 
</script> 

In Ansicht:

ViewData["Message"] = "1"; 

ViewData["Message"] würde in der gleichen Sache hier resultieren.

+0

Gelöst :) THX viel – Neo

1

Versuchen Benutzer

TempData 

statt

ViewData 
+0

funktioniert nicht für mich :( – Neo

Verwandte Themen