前台如何调用后台的变量!谢谢

ztwzztwx 2006-02-15 02:07:42
比如我在后台定义了一个protect string i="b.aspx";我想在html的前台调用后台的变量,是不是写为<%#i%>?

就好像,我在后台定义了一个hyperlink控件,前台它显示为<asp:HyperLink id="HyperLink1" style="Z-INDEX: 102; LEFT: 336px; POSITION: absolute; TOP: 232px"runat="server" NavigateUrl="b.aspx">新浪</asp:HyperLink>

我想把NavigateUrl="b.aspx"换成NavigateUrl=<%#i%>这样好像不行,这是为什么呢?
...全文
1311 47 打赏 收藏 转发到动态 举报
写回复
用AI写文章
47 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhoukeming 2006-02-16
  • 打赏
  • 举报
回复
使用Label控件就不用在前台调用了,直接后台写Label1.Text=i即可

如果想前台使用,不用加任何控件,直接在任意位置写<%=i%>,但是该变量必须在后台定义为全局变量
ztwzztwx 2006-02-16
  • 打赏
  • 举报
回复
你说的我感觉似乎还是后台调用啊
ztwzztwx 2006-02-16
  • 打赏
  • 举报
回复
gngnandgngn(仗义执言),您说的没错,可是如果我要的值是后台的一个变量呢?在前台调用的话怎么调用?
joeweng 2006-02-16
  • 打赏
  • 举报
回复
放在服务器控件里面肯定不行啦

pazuochuan 2006-02-16
  • 打赏
  • 举报
回复
偶是来记笔记的
Ivony 2006-02-16
  • 打赏
  • 举报
回复
<%=要写在HTML代码里面,而<asp:xxxxxx runat="server"不是HTML代码
要给一个服务器控件的属性赋值,直接在CodeBehind里面写就行了:
HyperLink1.NavigateUrl = "1.ToString()
gngnandgngn 2006-02-16
  • 打赏
  • 举报
回复
看不下去了。。。。
你在页面上弄个隐藏控件
<input type=hiden>什么的,把值都扔在里面在前台取不就好了麻。。。
<% %>这种看着不别扭吗, asp的风格
HAVENT 2006-02-16
  • 打赏
  • 举报
回复
<%# %>是专门用来数据绑定的,当然不能给个空的
<%=i%>跟以前ASP一样,相当于<%Response.Write(i)%>,直接输出
HAVENT 2006-02-16
  • 打赏
  • 举报
回复
使用Label控件就不用在前台调用了,直接后台写Label1.Text=i即可

如果想前台使用,不用加任何控件,直接在任意位置写<%=i%>,但是该变量必须在后台定义为全局变量
ztwzztwx 2006-02-16
  • 打赏
  • 举报
回复
请问<%#%>和<%=%>有什么不同,听说<%#%>不可仪直接用
khhqy 2006-02-16
  • 打赏
  • 举报
回复
哇呵呵看看,http://khhqy.Lun123.com 我的创业网!
现向全国招骋,主要工作:上网发发电子邮件,聊天等!
dytmlx123 2006-02-16
  • 打赏
  • 举报
回复
用html控件设hiddenbutton
ztwzztwx 2006-02-16
  • 打赏
  • 举报
回复
怎么通过hidden传?
anakine 2006-02-16
  • 打赏
  • 举报
回复
回复人: jxdyzwh(阳光男孩) ( ) 信誉:86 2006-2-15 14:42:52 得分: 0

可以通过HIDDEN来传值的

======================
正解

joeweng 2006-02-16
  • 打赏
  • 举报
回复
直接在后台用LABEL1.TEXT = I

不记行了

在前台放在服务器控件里冇肯定不行啦

用<input type = text value = "<%=i%>"> 是可以的
ztwzztwx 2006-02-16
  • 打赏
  • 举报
回复
各位坛友,请问,在word下面编好一个表格,直接复制粘贴到textbox中,是无法正常显示的,因为,所有的横线和竖线都没有了,我们只能将表格之类的东西转化为html语言输入数据库才能正常显示,那么请问,freetextbox中用来输入文本的是textbox么?如果是的话,做了什么改动
Lcindep110 2006-02-16
  • 打赏
  • 举报
回复
改为这样试试
<asp:Label id="Label1" style="Z-INDEX: 102; LEFT: 352px; POSITION: absolute; TOP: 224px" runat="server" Text='<%=i%>' />
  • 打赏
  • 举报
回复
为什么去掉runat="server"就可以么

应该是运行机制问题,象ll_e_mail所说的,在html中label控件中执行在前,而变量i在后,去掉runat其实就识别为普通html控件了,不再属于服务器控件,运行机制就变了,因而能显示,具体说不清楚

你想要的效果这样最好ll_e_mail
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
this.Label1.Text = i;
}

public string i="b.aspx";
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
this.Label1.Text = i;
}
fish_he 2006-02-15
  • 打赏
  • 举报
回复
Label是服务器控件,<%=i%>的写法是针对html语言中调用服务器端的变量用的。我想是这个原因吧。
ztwzztwx 2006-02-15
  • 打赏
  • 举报
回复
fish_he(fish_he)您的最后一个帖子我试了,的确如此,ll_e_mail() 的方法我知道,可是您知道为什么去掉runat="server"就可以么?谢谢了!
加载更多回复(27)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧