代码示例:
protected override void Render(HtmlTextWriter output)
{
String scriptString = "alert(1);";
if(!this.Page.IsClientScriptBlockRegistered("clientScript1"))
this.Page.RegisterClientScriptBlock("clientScript1", scriptString);
}
在生成的html中没有找到注册的alert语句
it is too late to do it in Render, also your scriptstring is invalid, try in Page_Load or in PreRender
String scriptString = "<script>alert(1);</" + "script>";
if(!this.Page.IsClientScriptBlockRegistered("clientScript1"))
this.Page.RegisterClientScriptBlock("clientScript1", scriptString);
太迟了,都已经到Render时候了当然注册不了了,请在Page_Init或者Page_Load中注册。建议看看.net文档中的asp.net服务器控件生命周期那篇文章。