Для калибровки машины У меня есть большая форма с более чем 100 полями и несколькими кнопками «Отправить», каждая из которых отправляет форму с уникальным статусом, который идентифицирует статус калибровки для этой машины.Как показано ниже
@using (Ajax.BeginForm("PostAssetCalcert", "SiteReport", null, new AjaxOptions { OnBegin="return ValidateForm()", OnSuccess = "ReloadAssetTable()", OnFailure = "ReloadAssetTable()" }))
{
<input type="submit" name="done" value="Done" class="btn-sm btn-warning" hidden="hidden" />
<input type="submit" name="save" value="Save for Now" class="btn-sm btn-info" />
<input type="submit" name="scrap" value="Scrap" class="btn-sm btn-danger" />
<input type="submit" name="removeAdjustment" value="Remove Adjustment" class="btn-sm btn-danger" />
..
.. Other form fields
Запуск проверки путем вызова метода ValidateForm()
внутри AjaxOptions {OnBegin = "return ValidateForm()"}
атрибута OnBegin.
Мой вопрос: как можно избежать проверки на стороне клиента для некоторых отправок?поскольку нет необходимости проверять, когда пользователь выбирает 'Save for Now'
, 'Scrap'
или 'Remove'
, выбор опции 'Done'
должен выполнить проверку.
В моем методе контроллера я просто читаю переменные формычтобы получить выбор пользователя для выбранной опции, например:
if (Request.Form["done"] != null){
// actions for 'Done' status
}if (Request.Form["scrap"] != null){
// asctions for 'Scrap' status
}
Можно ли прочитать переменную формы внутри JS validateForm()
?если так, я мог бы добавить проверку, используя это, чтобы избежать дальнейшей проверки и вернуть true.