ASP.NET前后台数据、函数的相互操作
<%# %>、<%= %>、<% %>以及<%@ %>的一些区分
<%# %>用于数据绑定,仅当调用页面或控件的DataBind()方法时,<%# %>中的表达式将被执行。如:<%# Container.DataItem(‘tit’) %>
<%= %>用于表达式输出结果。当<%= %>出现在页面上时,其中的表达式将被执行和呈现,即在程序执行时被调用,可以显示后台的变量值。如:<%= aaa %>
<% %>内联代码块里可以在页面文件*.aspx或*.ascx文件里面嵌入后台代码。如
<%
for(int i = 0;i < 100; i++ )
{
…
}
%>
<%@ %>是在*.aspx页面后台代码导入命名空间。如<%@ Import namespace = “System.Data”>
如何通过前台代码操作后台代码
法1:
可以在后台中有这么一个函数protected string fun(string cc)
在前台中以JavaScript调用即可<%= fun(“hhhhh”)%>
法2:
可以在页面中放置一个按钮,把其设置一下style=”display:none”,隐藏之后通过脚本让次按钮点击即可document.all(“btnClick”).click()或者 document.getElementById(“btnClick”).click()
如何通过后台代码操作前台代码
<1>通过ClientScript类动态添加脚本.(蛮好的)
ClientScript.RegisterStartupScript(this.GetType(), "clear", "<script> cc()</script>"); //this.GetType()是固定写法,"clear"可以为空,<script> </script>调用脚本
<2>通过Response.Write()方法写入脚本
Response.Write("<script type=’text/javascript’>alert();</script>")
<3>对控件加Attributes属性
btnLink.Attributes.Add("onclick", "cc()");
对服务器控件应当有一个注意的地方,服务器控件的触发会引起页面的刷新,应当尽量不用吧。