2011-10-16 3 views
0

안녕하세요 저는 MVC3을 사용하고 있습니다. C# 환경에 있습니다. else 문이 만족 스러울 때 팝업을 보여주고 싶습니다. 바로 ... 오히려 내가 팝업이 때 다른 문을 작업 할 내가 찾던 나는 JQuery와 솔루션을 찾았지만, 그들은 클릭 결과에 작동C에서 else 문을 통해 팝업을 트리거하는 방법

if (validate.Count < 1) { 
    db.TutorStudents.Add(tutorStudent); 
    db.SaveChanges(); 
    return RedirectToAction("Index"); 
} else { 
    // need some form of popup message here that does not redirect the user       
} 

: 코드는 다음과 같습니다 에 도달했습니다. 어떤 해결책도 환영합니다.

은 사전에 감사

+0

else 문은 정확히 어디에 있습니까? –

답변

2

서버에서 직접 클라이언트 쪽에서 팝업을 표시 할 수 없습니다.

하지만 당신은 ViewData 또는 ViewBag 일부 마커 값을 넣어보기에 스크립트로이 값을 전달할 수 있습니다 : 뷰의 행동

 if (validate.Count < 1) 
     { 
      db.TutorStudents.Add(tutorStudent); 
      db.SaveChanges(); 
      return RedirectToAction("Index"); 
     } 
     else 
     { 
      ViewBag.ShowMessage = true; 
      //need some form of popup message here that does not redirect the user        
     } 

@if (ViewBag.ShowMessage) 
{ 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      $(".message-box").show(); 
     }); 
    </script> 
    <div class="message-box">Some Message here</div> 
} 
+0

정확히 내가 뭘 찾고 있었는지 ... 감사합니다. – futureMVCwhizz

+0

보기의 in 문에서 @if 문에서 == true를 잊었을 것이라고 생각하지만 ... – futureMVCwhizz

2

시도 :

@if(ViewBag.PopUp == true){ 
    <script type="text/javascript"> 
     alert("Your message here..."); 
    </script> 
} 

UPDATE :

if (validate.Count < 1){ db.TutorStudents.Add(tutorStudent); db.SaveChanges(); return RedirectToAction("Index"); } else { ViewBag.PopUp = true; return View(); // or any logic to show the last-view to user again } 

및보기

당신은 웹 -에서 C#을 통해 사용자에게 팝업을 표시 할 수 없습니다 Apps. C#은 서버에서 실행되기 때문에 최종 사용자 브라우저에서 실행되는 클라이언트 측 코드를 만들어야합니다. 따라서 C#을 통해 응용 프로그램을 제어하고 목적을 달성하기 위해 HTML (및/또는 JavaScript, jQuery, CSS)을 생성하는 논리를 만들어야합니다.

관련 문제