首页 > 代码库 > C# 从后台代码同步或异步注册Javascript到页面之RegisterStartupScript和RegisterClientScriptBlock的区别
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);
C# 从后台代码同步或异步注册Javascript到页面之RegisterStartupScript和RegisterClientScriptBlock的区别
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。