Вы поместили файл aspx.cs
в неправильное место, которое должно быть в файле .cs
. Вы должны попробовать, как показано ниже:
Aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebFormTest.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="Hidden1" type="hidden" runat="server" />
<asp:Button ID="Button1" runat="server" OnClientClick="can()" Text="Button"
onclick="Button1_Click" />
</div>
</form>
<script>
function can() {
var candy = "Chocolate";
document.getElementById("Hidden1").value = candy;
}
</script>
</body>
</html>
Aspx.cs:
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write(Hidden1.Value);
}
Test Result:
![enter image description here](https://i.stack.imgur.com/6w6OI.png)
How To Get It Worked:
Согласно вашему комментарию: у вас есть страница WebForm1.aspx
Если вы ее развернете, вы получите файл WebForm1.aspx.cs
, просто вставьте файл cs
, и будет работа как и ожидалось.
См. Снимок экрана для большей ясности:
![enter image description here](https://i.stack.imgur.com/1wcoO.png)
Я протестировал и работаю, как ожидалось.