c# - 如何从代码隐藏动态添加 html 选择控件?

标签 c# javascript asp.net visual-studio-2008

我已经用 ASP.NET 和 C# 编程一周左右了,请耐心等待。

我正在尝试在 asp c# 中做一个收据生成器,看起来有点像这样:

Receipt

蓝色按钮使用以下 JavaScript 函数向表格添加新行:

function nuevo(){
$("#tablaUsuarios").append("<tr>" +
    "<td><select name='listaConceptos' id='listaConceptos' runat='server'></select></td>" +
    "<td><input name='precio' id='precio' type='text' size='15' runat='server' readonly/></td>" +
    "<td><input type='button' value='Eliminar' onclick='eliminar(this)' class='btn btn-danger eliminar'></td>"+
    "</tr>")
}

但是,由于我在运行时通过 javascript 添加控件,因此我无法从后面的代码访问它们,就像它们是 DropDownList 控件一样,添加 runat="server" 也是无用的,因为在运行时我无法将它们转换为服务器控件,有什么方法可以访问该控件,以便我可以填充、设置数据源等,就像它是一个 DropDownList 一样?或者任何其他方式动态生成和填充 DDL?

我考虑过用数据库中我需要的所有数据填充一个隐藏的 DropDownList,并在创建时将其所有属性复制到其他选择控件,但我不知道它的行为是否会像具有 DataValueFields 和的 DDL 一样文本字段。

最佳答案

查看下面的链接。 Accessing client side dynamic controls within ASP.NET codebehind

您应该能够在服务器端按名称访问表单元素,如下所示:

var val = Request.Form["YOUR_CONTROLS_NAME"];

您必须负责使用唯一的名称来命名您添加的控件。

关于c# - 如何从代码隐藏动态添加 html 选择控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13830581/

相关文章:

asp.net - 我可以将图像添加到 ASP.NET 按钮吗?

c# - 如何使用 WebRequest 发布数据并从网页获取响应

c# - 如何捕获 ReactiveCommand 异常?

c# - 如何使用 x/y 坐标而不是索引访问 Grid 中的子节点?

C# 手动填充 double[][]

javascript - 右移 >> 将值变成零 javascript

c# - 比类更易访问的方法

javascript - mapStateToProps 和变量未定义 React-Redux

javascript - Webpack - 编译两个具有不同 Assets 路径的输出包

c# - 带有 MongoDb 的 ASP.NET Core 3.1 中的身份服务器 4