gpt4 book ai didi

c# - asp.net: (c# client-side) 如何访问页面加载后创建的 html 元素?

转载 作者:太空狗 更新时间:2023-10-30 00:55:07 27 4
gpt4 key购买 nike

想象一下,

第 1 步:ASPX 页面加载。
第 2 步:按钮触发一个脚本,该脚本创建一个带有 id 或 class 标签(包括 runat 服务器属性)的 html 元素(div、span 等)。

我的问题是,

最后一步:如何从我的 C# 文件访问该元素并获取它的内部 html,以便我可以将它保存为字符串?

PS:我将使用该字符串将其保存在我的 mssql 数据库中。

最佳答案

如果不对服务器进行完整回发,您就无法创建“真实的”runat=server 元素/控件。

最好的方法可能是在提交页面之前编写一些脚本,将 innerHTML 存储到 ASP.Net 隐藏字段中。然后您可以访问此隐藏字段的值以获取数据。

如果您想要动态创建多个对象,则需要使用标准的 html 隐藏输入字段,因为您无法通过 javascript 创建 asp.net 服务器控件。

<input type="hidden" name="fieldData_1" value="control 1 html content">
<input type="hidden" name="fieldData_2" value="control 2 html content">

然后您将能够从 Request.Form 对象访问这些隐藏字段:

Request.Form["fieldData_1"]

了解这一点,您现在可以迭代表单数据并处理所有动态字段

foreach (string fieldData in Request.Form)
{
if(fieldData.Contains("fieldData_"){
//process the data for each field
}
}

也可以避免一起使用隐藏字段,只需使用 __doPostback('', '') 方法将数据直接传递到服务器。这可以通过许多不同的方式实现,所以我只推荐您引用 http://dopostback.net阅读该方法的工作原理。

关于c# - asp.net: (c# client-side) 如何访问页面加载后创建的 html 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10578886/

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