注册RegisterClientScriptBlock
后,asp.net页面或代码的最佳部分在哪里。
答案 0 :(得分:3)
你有很多选择。
注册脚本包含在<head>
部分或内联<script>
标记中。我更喜欢将我的脚本放在页面底部。
您也可以在Page
(或任何其他活动)中Page_Load
级别注册,方法是调用ClientScript.RegisterClientScriptBlock
并将其传递给您想要的脚本。请记住,如果您使用RegisterClientScriptBlock
,则需要确保在每次加载页面时注册代码,这就是为什么我要推荐Page_Load
事件,如果您想使用此方法。
例如:
protected void Page_Load(object sender, EventArgs e)
{
AddClientSideJavascript();
// Do other stuff
}
private void AddClientSideJavascript()
{
// Register some client script code
Type someType = this.GetType();
if (!ClientScript.IsClientScriptBlockRegistered(someType, "TESTSCRIPT"))
{
string script = "function ShowAlert() { alert('Test'); }";
ClientScript.RegisterClientScriptBlock(someType, "TESTSCRIPT", script, true);
}
// Register more here... etc...
}
请确保您没有将Page_Load
包含在if (!IsPostBack)
支票中的部分包括在内,否则您的脚本将不会在任何回发后注册。
答案 1 :(得分:0)
正确的答案是 - 在page_load中的任何一点。