Почему .NET удаляет один тег <form>со страницы, если уже есть форма с атрибутом сервера runat? - PullRequest
5 голосов
/ 21 декабря 2008

Он не удаляет все внутри тега 2-й формы, а просто скрывает теги и со страницы

Есть идеи и обходные пути?

Ответы [ 4 ]

5 голосов
/ 21 декабря 2008

Вложение форм в html не допускается. Таким образом, вы не можете добавить другую форму внутри серверной формы.

Но в ASP.NET совершенно законно добавлять get-формы вне серверной формы.

2 голосов
/ 23 декабря 2008

Я переместил вложенную форму наружу, чтобы решить эту проблему.

1 голос
/ 21 декабря 2008

Вы не можете иметь вложенные теги формы. Перейдите на asp.net mvc, если вы хотите больше контроля над разметкой, или не используйте серверные элементы управления asp.net. Таким образом, вы можете включить несколько тегов формы, не гарантируя, что элементы управления находятся внутри тега формы с атрибутом сервера runat, но тогда вы не получите детальный доступ в коде и вам придется начать использовать выборку request.form для получения значений обратной передачи.

0 голосов
/ 21 декабря 2008

Причина, по которой ASP.NET заключает все в одну форму, заключается в том, что при обратной передаче вся форма отправляется обратно на сервер, и у вас будет доступ ко всем элементам на странице.

То есть вы можете изменять свойства элементов (myTextbox.Text = 'Hello';) из Code-Behind.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...