Отключить проверку на стороне клиента в MVC 3 "отменить" кнопку отправки
Хорошо, много часов пробовал и мог использовать какую-то помощь. Я пытаюсь реализовать страницу в MVC 3, которая имеет кнопки "назад" и "следующий". Когда нажата кнопка "Назад", я хочу отключить проверку MVC на стороне клиента, чтобы мой метод действий запустился и отправил пользователя на предыдущую логическую веб-страницу. Я пробовал это:
<script type="text/javascript">
document.getElementById("backButton").disableValidation = true;
</script>
и это:
<input type="submit" name="backButton" value="← Back"
title="Go back to step 1." disableValidation="true" />
Но, несмотря ни на что, JavaScript-авторизация с сантиметровой стороны запускается и не позволит кнопке делать обратную связь. Я думаю, что disableValidation
работает только в MVC 2, и я должен делать что-то еще в MVC 3, но не могу найти примеров.
Ответы
Ответ 1
Какова эта мистическая сила, которая заставляет ответ проявлять себя, как только вы отправляете вопрос где-то?
Похоже, что в MVC 3 вы отключите проверку на стороне клиента кнопкой, добавив к ней класс "cancel". Итак, в моем примере:
<input type="submit" name="backButton" value="← Back"
title="Go back to step 1." class="cancel" />
отлично работает. И не требуется атрибут идентификатора. Если у вас есть фактический стиль на кнопке, просто сделайте следующее:
<input type="submit" name="backButton" value="← Back"
title="Go back to step 1." class="style-name cancel" />
Ответ 2
Сценарии проверки, похоже, связаны с типом отправки input
. Изменив cancel
на кнопку, проверка не пройдена:
<button type="button" onclick="document.location.href('Index')">Cancel</button>
Ответ 3
Я использую это для кнопки
$("button").each(function (elem) {
var button = $($("button")[elem]);
button.addClass('cancel');
if (button.attr('type') == 'submit') {
button.click(function (e) {
var validator = button.closest('form').validate();
validator.cancelSubmit = true;
});
}
});