Ненавязчивая форма ajax предотвращает публикацию кнопки отмены
Вопрос: Почему отправка кнопки отмены на контроллер, как отправить?
У меня есть форма ниже, загруженная из частичного представления. Отправить работает отлично. Единственное, с чем я боролся - почему Cancel не просто отклоняет форму. Я пробовал разные вещи, такие как захват события клика. Я смотрел на http://jimmylarkin.net/post/2012/05/16/Broken-Validation-on-Cancel-Buttons-With-Unobtrusive-Validation-Ajax.aspx как возможное решение, но я не уверен, что это проблема, которую он предназначен для решения. Без сомнения, это какое-то невежество с моей стороны. Так чего же мне не хватает?
//click event loading the form.
<script>
$(document).ready(function () {
$('#editbtn').click(function () {
var url = "/Quiz/EditQuiz?id=@id";
$.get(url, function (data) {
$('#formdiv').html(data);
$("#formdiv").show();
});
});
</script>
//form inside partial view.
@using (Ajax.BeginForm("EditQuiz", "Quiz", FormMethod.Post,
new AjaxOptions
{
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST",
UpdateTargetId = "formdiv"
}))
{
@Html.ValidationSummary(true)
@Html.AntiForgeryToken()
<div>
<fieldset>
.
.
<input type="submit" class = "btn btn-primary" value="Save" />
<button class = "cancel" >Cancel </button>
</fieldset>
</div>
}
1 ответ
Мне интересно, если ваша кнопка отмены вызывает отправку по умолчанию. Попробуйте заменить ваш <button class="cancel">
с помощью помощника HTML. Как насчет @Html.ActionLink("Cancel", "Index")
, Это ссылка с текстом Cancel
и перенаправляет на действия Index
,