首页 新闻 搜索 专区 学院

TextBox数据绑定

0
悬赏园豆:5 [待解决问题]

 <asp:TextBox ID="txtName" runat="server" Text="<%=stu.Name %>"></asp:TextBox>

Name是stu对象的属性,为什么这样写会在运行时TextBox中的值会是<%=stu.Name %>??

bluesky123的主页 bluesky123 | 初学一级 | 园豆:195
提问于:2010-12-08 13:21
< >
分享
所有回答(8)
0

···竟然是服务器空间可否考虑在后台赋值?

写代码的小2B | 园豆:4355 (老鸟四级) | 2010-12-08 13:26
0

顶楼上,既然是服务器控件为什么要这样来赋值,在后台直接赋值岂不方便?

勤劳的渔网工作者 | 园豆:572 (小虾三级) | 2010-12-08 14:01
0

<%#stu.Name %>试试这样

沉默的糕点 | 园豆:1786 (小虾三级) | 2010-12-08 14:03

OK , 是这样的,解决了。。。

而且如果这不是在数据控件下的绑定, 只需要加个 Page.DataBind();

支持(0) 反对(1) goto13 | 园豆:200 (初学一级) | 2013-02-20 12:24
0

我也觉得在后台直接赋值,容易些。如果是文本框较多,你就考虑下用反射去赋值,方便点。

yxjyxj | 园豆:170 (初学一级) | 2010-12-08 14:15
0

将=改成#就KO了...

费里曼 | 园豆:493 (菜鸟二级) | 2010-12-08 15:17
0

你这样写的前提是,在后台有一个实体类对象 stu 是public 的。

例如:public 类型名称 stu{get;set;}[stu对象中有name属性]

邢少 | 园豆:10926 (专家六级) | 2010-12-08 16:40
0

<asp:TextBox ID="txtName" runat="server" Text="<%=stu.Name %>"></asp:TextBox>

改成

<asp:TextBox ID="txtName" runat="server" Text='<%=stu.Name %>'></asp:TextBox>

这样应该就没问题

问题出在双引号

还有上面说的<%#%>  其实应该是<%#eval('')%>这样的  是用于读取绑定数据的值 有2个 一个是单向绑定 一个是双向绑定 

可以帮你解决问题了吗

|ī笨笨﹎ヤ | 园豆:2 (初学一级) | 2010-12-08 18:25
0

一个变量
例:<asp:Label ID="Label1" runat="server" Text="<%#变量名%>"></asp:Label>
服务器控件的属性值
例: <asp:Label ID="Label1" runat="server" Text="<%#TextBox2.Text %>"></asp:Label>

Astar | 园豆:40805 (高人七级) | 2010-12-09 14:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册