2010-05-29 6 views
0

xml 파일의 값을 텍스트 상자로 업데이트하려고합니다. 나는이 자바 스크립트가 Page_Load 이벤트에서 호출되는 한ASP.NET에서 페이지가로드되기 전에 자바 스크립트 업데이트

this.Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", sb.ToString(), true); 

나는 게시물 다시 수행 버튼을 계속 클릭하지만 난 나를 JS가 실행되지 않는 생각하게 다시 페이지를 새로 고침 할 때까지 값이 업데이트되지 않습니다 페이지가 반환 될 때까지 단추 다시 게시 후 페이지를 새로 고칠 때 값을 업데이트하는 방법을 궁금하네요.

감사

답변

0

JS 너무 오래 당신의 RegisterStartupScriptIf(!IsPostback) 블록에 아니므로 모든 포스트 백 후 브라우저에게 렌더링됩니다. 자바 스크립트를 게시하십시오.

+0

렌더링되는 것이지만 어떤 시점에서 실행되는지 알고 있습니다. 새로 고침하면 업데이트 된 값이 표시되므로 페이지가 표시된 후에 실행되는 것 같습니다. – user204588

+1

그건 전적으로 자바 스크립트에 따라 다릅니다. sb.ToString()이 함수 정의를 출력하면, 뭔가가 함수를 호출 할 때 실행됩니다. 예를 들어 직진 명령 인 경우. 경고 ('Hello World')는 모든 페이지로드 후에 실행됩니다. 자바 스크립트를 게시하십시오. –

1

JavaScript로 왜 이렇게하는지 다시 평가할 것입니다. 나는 이것이 asp.net 페이지의 코드 뒤에있는 아주 사소한 일이라고 생각한다. 같은 뭔가 .. 난 그냥 영문 코드에서 직접 자바 스크립트를 작성 해달라고 이유를 모르겠어요 당신은 자바 스크립트를 사용하기 위해 최선을 다하고 경우

var xmlSource = contacts.Load(@"myxmldoc.xml"); 
mytextbox.Text = (from c in xmlSource.contact 
     where c.contactId < 4 
     select c.firstName + " " + c.lastName).FirstOrDefault(); 

. 내 javascript가 어떤면에서 동적 인 경우에만 registerstartupscript를 사용합니다. 대개 자바 스크립트에서 공개 속성을 사용하여 페이지에 동적 값을 전달하기에 충분합니다.

관련 문제