gpt4 book ai didi

asp.net - body runat ="server"导致编译错误

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

在母版页中,我有以下标记

<body id="body" runat="server">

我设置了 runat="server" 因为我需要能够访问代码隐藏中的 body 元素。

我现在想向 body onload 事件添加 JavaScript 函数调用,如下所示:

<body id="body" runat="server" onload="someJavaScriptFunction();">

但是,这给了我一个编译错误,并显示消息“无法解析符号 someJavaScriptFunction();”。如果我运行该应用程序,我会收到一条错误消息

Compiler Error Message: CS1026: ) expected

这是怎么回事? onload 是一个客户端事件,那么为什么 ASP.NET 编译器要关心这个呢?

最佳答案

您需要在后面的代码中添加此内容;

protected void Page_Load(object sender, EventArgs e)
{
body.Attributes.Add("onload", "someJavaScriptFunction();");
}

添加runat="server"标记使其成为服务器标记,即使它不是显式前缀的标记之一(例如 <asp:Panel /> )。在服务器标签上,任何 onXXXX事件处理程序处理服务器端事件,而不是客户端事件(除非显式调用“客户端”,例如按钮的 OnClientClick)。

关于asp.net - body runat ="server"导致编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/725658/

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