이 같은 첫 페이지로드에 클라이언트 스크립트 블록을 추가하고 경우포스트 백에 클라이언트 스크립트를 다시 등록해야합니까?
if (this.Page.IsPostBack==false)
{
if (this.Page.ClientScript
.IsClientScriptIncludeRegistered("ctlmyControl")==false)
{
string guidParamToHackBrowserCaching
= System.Guid.NewGuid().ToString();
this.Page.ClientScript.RegisterClientScriptInclude("ctlmyControl"
, ResolveUrl(String
.Format("~/clientScripts/ctlmyControl.js
?par={0}",guidParamToHackBrowserCaching)));
}
}
내가 모든 포스트 뒤에를 다시 등록 해야합니까?
감사합니다, 그것은 스크립트가하지만, 아마에 따라 달라집니다
server -partial postback에 대한 비동기 호출 인 경우 스크립트가 브라우저 캐시에 남아 있다고 생각합니다. 옳은? – pencilCake
@burak - 예, 부분 포스트 백의 경우 브라우저의 DOM이 파괴되지 않으므로 스크립트가 클라이언트에 계속 남아 있습니다. –
.. 실제로 스크립트가 업데이트 된 페이지 부분에 렌더링되지 않은 경우. 'RegisterStartupScript'를 사용하면'UpdatePanel' 영역에있게 될 것이고, 그렇지 않은 경우에는 안됩니다. 그래서 부분적인 포스트 백 이후에 시작 스크립트를 다시 등록하기를 원할 것입니다. (그런 부분이 실제로는 부분적인 포스트 백 이후에 실행되기 때문에 실제로 구분됩니다.) –