CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

asp.net服务器的控件对于<%=...%>语句是否不可用?

楼主bouyuki(bouyuki)2005-06-01 16:45:43 在 .NET技术 / ASP.NET 提问

例如:<asp:Label   id="Label1"   runat="server"><%=temp%></asp:Label>  
  这个句子,一运行就出错?为什么? 问题点数:20、回复次数:22Top

1 楼fancyf(凡瑞)回复于 2005-06-01 16:53:50 得分 0

<asp:Label   id="Label1"   runat="server"   Text='<%=temp%>'></asp:Label>  
  Top

2 楼bouyuki(bouyuki)回复于 2005-06-01 17:08:18 得分 0

不报错,但还是出不来阿?我在vb程序里这样定义:  
  Public   Class   customItems  
        Inherits   System.Web.UI.Page  
          #Region   "   Web   Form   Designer   Generated   Code   "(略)  
          Public   temp   As   String   =   "hello,friends!"  
     
        Private   Sub   Page_Load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)            
                        Handles   MyBase.Load  
                                  ...........  
        End   Sub  
   
   
  Top

3 楼bouyuki(bouyuki)回复于 2005-06-01 17:24:25 得分 0

用<%#   temp   %>和databind()方法是可以的,但上边所说的情况为什么不可以呢?  
  那位好心的大侠能为我解惑啊?Top

4 楼bouyuki(bouyuki)回复于 2005-06-01 17:45:01 得分 0

别沉!Top

5 楼ghchen()回复于 2005-06-01 17:48:57 得分 0

用<%=temp%>在这个页面的前页要声明tempTop

6 楼ghchen()回复于 2005-06-01 17:51:15 得分 0

例如  
   
  <script   runat="server">  
            long   temp=10;  
   
  </script>Top

7 楼jisen(亲密爱人)回复于 2005-06-01 17:59:58 得分 0

你在页面加载时作Page.DataBind()方法了吗?  
  要不然是不会邦定任何值得!asp.net我是这样作的!但在vb里不知道还能用吗?  
  在.cs里面建立一个属性  
  public   string   Temp  
  {  
  get  
  {  
  return   temp;      
  }  
  set  
  {  
  temp=value;  
  }  
  }  
   
  然后再里面这样  
  <asp:Label   id="Label1"   runat="server"   Text='<%#   Temp   %>'></asp:Label>  
  记得一定要在Page_load()事件中调用Page.DataBind()方法  
   
  Top

8 楼bouyuki(bouyuki)回复于 2005-06-01 18:11:47 得分 0

晕!可能使我表达的不清楚,我是vb.net写的,并且已经给temp传值了呀!  
  Public   Class   customItems  
        Inherits   System.Web.UI.Page  
        Public   temp   As   String   =   "hello,friends!"  
     
        Private   Sub   Page_Load.......Top

9 楼bouyuki(bouyuki)回复于 2005-06-02 08:58:23 得分 0

谁能回答啊?苦等!Top

10 楼Nils(睡瞌睡等机会)回复于 2005-06-02 09:05:50 得分 8

搞不懂楼主为什么非得要加个服务器控件来浪费资源  
  tmp   =   "hello,friends!"  
  <%=tmp%>  
  跟  
  <asp:Label   id="Label1"   runat="server">hello,friends!</asp:Label>     的结果不就是一样的嘛Top

11 楼hzhzl()回复于 2005-06-02 09:20:12 得分 5

要么在后台绑定Label1.Text   =   temp;要么直接<%=temp%>Top

12 楼ghchen()回复于 2005-06-02 09:59:53 得分 0

楼主,经过测试,我这里可以通过,不过是C#Top

13 楼bccuiopniexin(csdnNieXin)回复于 2005-06-02 10:11:46 得分 0

你看一下temp的作用域  
  Top

14 楼luby(轻疯[在岁月无声的消逝里,轻轻的...我疯了。])回复于 2005-06-02 10:25:55 得分 0

第一楼是正确的。Top

15 楼msvbprogrammer(關)回复于 2005-06-02 10:39:21 得分 0

这样写吧:  
  <asp:Label   id="Label1"   runat="server"><%Response.Write(temp)%></asp:Label>  
   
  我用C#,要加分号<%Response.Write(temp);%>,vb可能不用加。Top

16 楼iuhxq(小灰)回复于 2005-06-02 10:48:53 得分 5

<asp:Label   id="Label1"   runat="server"><%=temp%></asp:Label>  
  不能这么用!!!  
   
   
  你这个跟  
  <%  
  function   sss  
  alert('sss');  
  end   function  
  %>  
  <input   type=button   onclick="sss">  
  没什么区别!  
   
  就是说,.net的代码不是面条式执行的,不能把面条式代码放到服务器端控件,如果要放要用绑定<%#   %>Top

17 楼iuhxq(小灰)回复于 2005-06-02 11:04:28 得分 0

private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
  //   在此处放置用户代码以初始化页面  
  Trace.Warn("---------");  
  }  
   
  <%  
  temp="tttttttttttttt";  
  Trace.Warn("==================");  
   
  %>  
   
  跟踪信息    
  类别   消息   From   First(s)   From   Last(s)    
  aspx.page   Begin   Init        
  aspx.page   End   Init   0.000084   0.000084    
    ---------   0.000150   0.000065    
  aspx.page   Begin   PreRender   0.000196   0.000046    
  aspx.page   End   PreRender   0.000239   0.000043    
  aspx.page   Begin   SaveViewState   0.000555   0.000316    
  aspx.page   End   SaveViewState   0.001163   0.000608    
  aspx.page   Begin   Render   0.001233   0.000069    
    ==================   0.002411   0.001178    
  aspx.page   End   Render   0.003548   0.001137    
   
   
  能否得出些什么呢?个人认为是在把页面发送给浏览器前解释<%%>里的代码,而后台代码是在  
   
  晕,我也解释不清,但总觉得跟这个有关系Top

18 楼iuhxq(小灰)回复于 2005-06-02 11:12:57 得分 0

http://www.ccw.com.cn/htm/center/prog/02_3_12_2.aspTop

19 楼xtxk_917(小强)回复于 2005-06-02 14:34:00 得分 0

<asp:Label   id="Label1"   runat="server"   Text='<%   =   temp   %>'></asp:Label>  
  是对的.可能是你的其它的不对吧!Top

20 楼theonewu(纪念)回复于 2005-06-02 15:23:04 得分 0

<asp:Label   id="Label1"   runat="server"   Text='<%   =   temp   %>'></asp:Label>  
  改成  
  <asp:Label   id="Label1"   runat="server"   Text='<%=temp()%>'></asp:Label>  
  后台定义函数如下  
  public   string   temp()  
  {  
          string   aa=Label1.Text;//等等代码自己看情况写  
          return   aa;  
  }  
  将这个改写成vb也很简单的吧!!!Top

21 楼theonewu(纪念)回复于 2005-06-02 15:25:15 得分 0

还是写个方法吧,不要用属性了,毕竟方法里能做的事情多!!!Top

22 楼98star(超越梦想,一起飞。我们需要真心面对。)回复于 2005-06-02 15:41:24 得分 2

在C#里面,<%=temp%>是完全可以用的。  
  个人认为asp.net兼容asp的方法  
  .aspx  
  <%=temp%>  
  .cs  
  protected   string   temp;Top

相关问题

  • 关于asp 服务器端控件问题!
  • 一问:Html服务器控件与ASP WEB表单控件有什么区别.
  • 如何使用ASP语句对服务器内的文件进行删除呢?
  • 服务器控件问题
  • response.write 服务器控件
  • 是不是在javascript语句中不能操作web服务器控件,而在asp.net里不能对html控件操作?
  • 用户控件与服务器控件
  • HTML服务器控件与ASP.NET服务器控件的区别
  • 如何用php写一条语句,测试服务器是否支持php? 就像asp用<% response.write "support asp" %>一样!
  • 急急~~~~~如何利用Asp语句删除己上传到Web服务器上的图片与文件来?

关键词

  • asp.net
  • c#
  • 控件
  • 代码
  • 服务器
  • 页面
  • vb
  • asp
  • 后台
  • aspx

得分解答快速导航

  • 帖主:bouyuki
  • Nils
  • hzhzl
  • iuhxq
  • 98star

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo