MVC: несколько отправленных форм в одном теге формы - PullRequest
1 голос
/ 27 января 2009

Я только начинаю играть с MVC, и со мной что-то не так. Я понимаю, как сделать простую форму ввода, и использую кнопку отправки, чтобы опубликовать форму, настроенную так:

<form runat="server" method="post" action="/Home/CreateNew" >

Но что произойдет, если все ваше приложение находится внутри одного тега формы и вы хотите иметь несколько форм ввода? Например, я использую некоторые элементы управления AjaxControlToolkit на своей главной странице, для чего требуется, чтобы вся страница находилась внутри тега формы. Если у меня есть две совершенно разные формы ввода, нужно ли направлять их обе через контроллер CreateNew? Как бы я сказал форме использовать разные действия для каждой формы ввода?

Ответы [ 2 ]

4 голосов
/ 27 января 2009

Не следует размещать одну форму вокруг всей страницы. Поместите несколько форм ввода, где они вам нужны. Вы также можете избавиться от runat = "server". Вам не понадобится это в MVC.

Большая часть Ajax Control Toolkit просто не будет работать в MVC, так как MVC не имеет ViewState. Существует версия только для клиента, которая работает до некоторой степени .

Моя рекомендация - использовать jQuery . Теперь это поддерживается Microsoft и намного лучше вписывается в модель MVC.

2 голосов
/ 28 января 2009

Крейг прав, что вам, вероятно, не следует пытаться заставить его работать с одной формой. Это очень анти-MVC и анти-HTML, однако, чтобы ответить на ваш вопрос, вы можете использовать JavaScript, чтобы изменить действие формы на лету.

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