如何将变量从 JavaScript 传递到 ASP
How to pass a variable from JavaScript to ASP
我不确定自己做错了什么。我想将变量从 JS 函数传递给 ASP,然后单击按钮将其打印在控制台中。
JS函数:
<script>
function can() {
var candy = "Chocolate";
document.getElementById("Hidden1").value = candy;
}
</script>
ASP.net:
<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 runat="server">
protected void Button1_Click(object sender, EventArgs e){
Response.Write(Hidden1.Value);
}
</script>
您将 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:
How To Get It Worked:
根据您的评论:您有 WebForm1.aspx
页面 如果您展开它,您会得到 WebForm1.aspx.cs
文件,只需粘贴您的 cs
文件,就会按预期工作。
查看屏幕截图更清晰:
我已经测试并按预期工作。
我不确定自己做错了什么。我想将变量从 JS 函数传递给 ASP,然后单击按钮将其打印在控制台中。
JS函数:
<script>
function can() {
var candy = "Chocolate";
document.getElementById("Hidden1").value = candy;
}
</script>
ASP.net:
<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 runat="server">
protected void Button1_Click(object sender, EventArgs e){
Response.Write(Hidden1.Value);
}
</script>
您将 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:
How To Get It Worked:
根据您的评论:您有 WebForm1.aspx
页面 如果您展开它,您会得到 WebForm1.aspx.cs
文件,只需粘贴您的 cs
文件,就会按预期工作。
查看屏幕截图更清晰:
我已经测试并按预期工作。