1
我不知道爲什麼我在使用AJAX.submit
執行Html.BeginForm
時不工作ValidationSummary
。如何在ajax提交中執行Html.ValidationSummary?
@model Contoso.MvcApplication.Models.Questions.MultipleChoiceQuestionTemplate
@using (Html.BeginForm("EditQuestion", "Question", FormMethod.Post, new { id = "editQuestionForm" }))
{
@Html.ValidationSummary(true)
@Html.EditorForModel("Questions/_MultipleChoiceQuestion")
<p>
<input type="submit" value="Save" />
</p>
}
public class MultipleChoiceQuestionTemplate : QuestionTemplate, IValidatableObject
{
public MultipleChoiceQuestionTemplate() { ... }
[DisplayName("Question")]
public string QuestionText { get; set; }
public List<string> Choices { get; set; }
[DisplayName("Correct Choice")]
public int CorrectChoice { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (String.IsNullOrEmpty(Choices5[CorrectChoice]))
{
yield return new ValidationResult("ERROR");
}
}
}
這裏是我的jQuery提交功能:
$("#editQuestionForm").submit(function() {
if ($(this).valid()) {
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function (result) {
$('#result').html(result);
}
});
}
return false;
});
但我什麼東西,因爲你可以在上面看到,我已經實現ValidatableObject
接口,當我點擊提交按鈕,執行一篇文章,當我的驗證模型有錯誤,並應在ValidationSummary
顯示錯誤。
_ 「我什麼事」 _? 〜請澄清你的問題的語言。謝謝。 – Sparky 2013-03-02 18:32:53