一,在后置代码中动态生成JavaScript代码的函数:
以前在后缀代码中生成javascript代码一直是使用Response.Write来生成,今天看到两个函数,可以让客户端生成Javascript代码,一个是:RegisterClientScriptBlock,另一个是:RegisterStartupScript,两者不同之处在于生成的位置不同,他们都在<Form>与</Form>块之间,但第一个在<Form>之后,第二个是在</Form>之前。两个函数可以配合与函数来查看代码块有没有被注册使用。例: private void Page_Load( object sender, System.EventArgs e) { StringBuilder scriptstring = new StringBuilder(); scriptstring.Append("<script language=javascript>"); scriptstring.Append("function Setfirstfocus(){ "); scriptstring.Append("document.all.name.focus();}"); scriptstring.Append("</script>"); string js = scriptstring.ToString(); Page.RegisterClientScriptBlock("Setfirstfocus", js); //Page.RegisterStartupScript("Setfirstfocus",js); }
二,关于ViewState的一些知识点: 可以详见 三,在客户端获得按键的javascript代码:
< script language = " javascript " > function keyDown() { var keycode=event.keyCode; var keychar=String.fromCharCode(keycode); alert('ASCII='+keycode+'\nKeyChar='+keychar); } document.onkeydown = keyDown; </ script >
四,用Enter替代Table健的Javascript代码:
< script language = " javascript " > function keyDown() { var keycode=event.keyCode; var keyChar=String.fromCharCode(keycode); if(keycode==13) event.keyCode=9; } ; document.onkeydown = keyDown; </ script >
五,动态创建控件:
Label lbl = new Label(); lbl.Text = " Label " + (i).ToString(); lbl.ID = " Label " + (i).ToString(); Panel1.Controls.Add(lbl); Panel1.Controls.Add( new LiteralControl( " <br> " ));
LiteralControl可以根据字符串来生成页面的html代码 六,动态更改Web控件的属性: 可以像给控件添加script事件一样为其添加样式属性,如: Button1.Attributes.Add("style","BACKGROUND-COLOR: #008888");七、在页面的Javscript代码中清加.net代码 如,aspx页面有以下控件 <asp:Literal ID="Literal1" Text="abc" runat="server"></asp:Literal>我想在下面的JS代码中获得Literal1.Text文字,通过以下方式获得:<script language="javascript"> alert("<%=Literal1.Text %>");</script>