gpt4 book ai didi

ASP.net 内联表达式问题

转载 作者:行者123 更新时间:2023-12-02 12:23:02 25 4
gpt4 key购买 nike

我似乎无法弄清楚为什么这在下面不起作用。我需要将文本框绑定(bind)到内联表达式中的值。看起来很简单吧?但这些都不起作用。有任何想法吗?提前致谢。

<asp:textbox id="tbName" runat="server" Text='<%# Eval("test") %>' />
<asp:textbox id="tbName" runat="server" Text='<%= "test" %>' />

编辑:我应该提到的是,该页面没有隐藏代码,顶部只有以下指令。

<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Web" %>
<%@ Page Language="C#" %>

编辑:

我能想到的唯一可行的解​​决方案是添加一个内联服务器脚本,就像这个一样。我希望我知道为什么内联表达式不起作用,除非您处于数据绑定(bind)上下文中。

<script language="C#" runat="server"> 
private void Page_Load(object sender, System.EventArgs e)
{
tbName.Text = "test";
}
</script>

最佳答案

在 Page_Load 中,您必须调用 Page.DataBind()

<asp:textbox id="tbName" runat="server" Text='<%# Eval("test") %>' />

上类。

<%= %> 是一个缩短的response.Write(),对于任何服务器标记来说,作为属性永远无效。

仅当容器是数据绑定(bind)的(您的情况下的页面)时才可以使用<%# %>。

<%$ %>可用于访问资源文件中的数据。

编辑:您还可以查看 How to 'bind' Text property of a label in markup这是一个类似的问题。

关于ASP.net 内联表达式问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/558954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com