javascript - 将数组从 Javascript 传递到 asp.net

标签 javascript asp.net webforms

我有两个独立的页面。其中一个包含包含 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/

相关文章:

asp.net - 如何检查页面上的所有复选框?

javascript - 我需要使用 HTML、CSS 和 JavaScript 来实现这一点——任何帮助都会很棒

javascript - jQuery - 重置更改事件

c# - Gridview ItemTemplate 的条件逻辑(仅使用标记)

javascript - 从 webpack 的 ExtractTextPlugin 和 style-loader 中缩小 css

asp.net - setTimeout 上的图像加载问题

javascript - MVC 4 网站在 iPad 上非常慢

jquery - 将 jQuery ajax 调用中的参数传递给 ASP.NET Web 方法

javascript - SignalR:调用集线器方法时发生内部服务器错误

javascript - 如何深度克隆iframe?