C# 從后台代碼同步或異步注冊Javascript到頁面之RegisterStartupScript和RegisterClientScriptBlock的區別


下面來講講同步注冊JS和異步注冊JS的區別

同步注冊JS:RegisterClientScriptBlock,相當於在 form開始處(緊接 <form runat="server"> 標識之后)發送腳本塊,在HTML節點還沒加載的時候就可以先注冊JS了

異步注冊JS:RegisterStartupScript,在 form結尾處(在 </form> 標識之前)發送腳本塊,在document裝載完成后會執行,等價於body.onload=f(){}里的內容,要等HTML節點元素渲染完成之后再加載JS

 

string script = "var iSetEditInputRealOnly;function SetEditInputRealOnly(){$('input[type=text],textarea,select').attr('disabled','disabled');$('table[class=edittable][projectcurrencyexchangerate=1]').find('img').hide();$('table[class=edittable][projectcurrencyexchangerate=1]').find('tr[class=head]').find('div').eq(0).hide();$('#ctl00_body_CycleAndScenario_ddlCycle,#ctl00_body_CycleAndScenario_ddlScenario').removeAttr('disabled');if($('table[class=edittable][projectcurrencyexchangerate=1]').find('img').length>0){clearInterval(iSetEditInputRealOnly)}$('input[type=submit]').click(function(event){$('#divImgWait').hide();event.preventDefault()})}$(document).ready(function(){iSetEditInputRealOnly=setInterval('SetEditInputRealOnly()',1000)});";

//異步注冊JavaScript
System.Web.UI.ScriptManager.RegisterStartupScript(Context.Page, ((SysPage)Context.Page).GetType(), Guid.NewGuid().ToString(), script, true);
//同步注冊JavaScript
Page.ClientScript.RegisterClientScriptBlock(Context.Page, ((SysPage)Context.Page).GetType(), Guid.NewGuid().ToString(), script, true);

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: