2012-08-14 2 views
1

당신이 볼 수있는대로 I want to show to client some text which are most Important for Client's. 그래서 나는 경고 양식 서버 측을 보여줄 계획이다. 이를 구현하기위한 I 코드 아래처럼 JScript의 기능를 만들 : 그래서 CS 코드 asp.net의 서버 측에서 알림 또는 메시지를 표시하는 방법은 무엇입니까?

function ShowMessage(s) { 
     alert(s); 
} 

호출하는이 방법을 쓰기 JS-기능 : 그래서

public static void ShowMessage(System.Web.UI.Page Pointer, string Message) 
{ 
    if (!Pointer.ClientScript.IsStartupScriptRegistered("message")) 
     Pointer.Page.ClientScript.RegisterStartupScript 
      (Pointer.Master.GetType(), "message", "ShowMessage('" + Message + "');", true); 
} 

This Code work well ;)

내 웹 앱을 승인하려고합니다. 및 using Update-panel and Script-Manager. 그들을 사용 후 나는 새로운 문제가 생겼 (업데이트 패널의 모든 버튼을 넣어)

Button-Click에서

이상 전화 ShowMessage 방법 경우 각 Post-back이 발생 말할 -.>아무것도 일이 없습니다. 아니 메시지, 아니 경고!

질문 :

  • 이 코드는 업데이트 패널에서 작동하지 않는 이유는 무엇입니까?
  • 해결 방법? 또는 메시지를 표시하는 것이 더 좋은 방법입니까? 이 때문에 업데이트 패널을 사용하고 있기 때문에 웹 페이지의 페이지 수명주기가 업데이트 패널을 사용한 후 변경 되었기 때문에
+1

[이 질문에 대한 해결책 (http://stackoverflow.com/questions/11263793/jquery-and-updatepanel)도 귀하의 사례를 해결할 것이라고 생각합니다. –

+0

업데이트 패널을 사용할 때 웹 페이지의 일부만 렌더링됩니다. 나는'Page.ClientScript'로 등록 된 스크립트가 전혀 렌더링되지 않는다고 생각합니다. (단지 "실제"포스트 백을 할 때만입니다.) – Magnus

+0

거의 모든 가능한 포맷 옵션을 사용했다고 생각합니다. –

답변

1

그 기능이 업데이트 패널없이 이전에 사용 된 일을하고 있지 않습니다

public static void ShowMessage(System.Web.UI.Page Pointer, string Message) 
{ 
    if (!Pointer.ClientScript.IsStartupScriptRegistered("message")) 
     ScriptManager.RegisterStartupScript(Pointer, 
              Pointer.Master.GetType(), 
              "message", 
              "ShowMessage('" + Message + "');", 
              true); 
} 

시도 제어, Page.ClientScript woks 전통적인 웹 페이지 수명주기와 함께.

자세한 내용을 보려면 here을 참조하십시오.

+0

감사합니다. 또한 귀하의 솔루션에 대한 자세한 정보를 설명 할 수 있습니까? – Rev

관련 문제