我有两个独立的页面。其中一个包含包含 JavaScript(一堆函数等)的 HTML 页面和一个 .aspx 页面。
我在 html 页面中有一些数组,我想将它们(使用 JavaScript)发送到 .aspx 以将它们存储到数据库中。
我尝试过隐藏字段、创建表单等。我得到的都是空。如何将数组传递给 aspx 以便稍后将它们存储在数据库中?我无法使用 jQuery。
function openPopup() {
window.open("Default.aspx", "scrollbars=yes, width=900,height=500,left=430,top=100");
return false;
}
function control() {
var a = JSON.stringify(x);// x and y are my arrays
var b = JSON.stringify(y);
var btnId = '<%= HiddenField1.ClientID%>';
var btnId2 = '<%= HiddenField2.ClientID%>';
document.getElementById(btnId).value = a;
document.getElementById(btnId2).value = b;
}
在 HTML 中
<button onclick="openPopup()">POP</button> //opens the aspx page
在 ASPX 中
<form id="form1" runat="server">
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Database" />
<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:HiddenField ID="HiddenField2" runat="server" />
</form>
在 ASPX.CS
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write(HiddenField1);
}
最佳答案
您需要使用 AJAX(最好)或使用传统的表单提交(提交后页面将重新加载)将数据发送到服务器。
一旦页面在浏览器中呈现,服务器就无法访问 HTML 元素。
关于javascript - 将数组从 Javascript 传递到 asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41265135/