Веб-сайт ASP.NET: страница с несколькими формами
У меня проблема при динамическом создании веб-страницы в ASP.NET (C#).
Мне нужно вставить несколько тегов формы на этой странице, я знаю, что не могу добавить более одного тега с атрибутом runat="server", и он мне не нужен.
Я хочу разместить их в C# (по одному для каждого элемента, которым я должен управлять), без атрибута runat, но объект HtmlForm, который я использую для вставки формы, автоматически добавляет атрибут runat, и я не могу удалить его (пробовал с form.Attributes.Remove ("runat"))
Если я использую простую строку вроде:
"<form id="someID" method="POST" action=""></form>"
и я добавляю это несколько раз в мой div, это работает. Дело в том, что я не хочу вставлять ВСЕ свои объекты HTML, записывая их в строку, и добавлять их с помощью метода InnerHTML. Я ищу объект, который управляет формой без атрибута runat или способа удалить его из HtmlForm.
2 ответа
Пользовательский элемент управления является, вероятно, самым чистым решением, но вы можете добавить HtmlGenericControl
вместо HtmlForm
объект, который не связан с какими-либо конкретными атрибутами.
Dim ctrl As New HtmlGenericControl("form")
ctrl.Attributes.Add("id", "someID")
ctrl.Attributes.Add("method", "POST")
ctrl.Attributes.Add("action", "")
OuterDivContainer.Controls.Add(ctrl)