पर त्रुटियों के साथ एमवीसी आंशिक दृश्य प्रदर्शित करें मेरे पास एक से अधिक रूपों वाला एक पृष्ठ है, प्रत्येक आंशिक के रूप में। मैं सबमिट पर प्रत्येक आंशिक पोस्ट करना चाहता हूं। यदि त्रुटियां हैं, तो मैं मुख्य पृष्ठ के हिस्से के रूप में आंशिक रूप से सत्यापन त्रुटियों को दिखाना चाहता हूं, यानी यदि त्रुटियां हैं तो मैं केवल अपने पृष्ठ पर आंशिक नहीं देखना चाहता हूं। क्या मैं यह कहने में सही हूं कि यह व्यवहार केवल अजाक्स पोस्ट के साथ ही संभव है? मैं AJAX पोस्ट के बिना मॉडल स्थिति त्रुटियों को कैसे वापस करूँगा, बस एक सामान्य फॉर्म पोस्ट?पैरेंट पेज
संपादित करें: फिर भी उसके अपने पृष्ठ पर आंशिक देखकर
आंशिक -
@using (Html.BeginForm("Login", "Account", FormMethod.Post, new { id = "LoginForm" }))
{
@Html.ValidationMessage("InvalidUserNamePassword")
<fieldset class="fieldset">
<div>
<label for="form-field-user_id">User ID</label>
<span>
@Html.TextBoxFor(x => x.Username, new { @class = "form-field__input form-field__input--text", @id = "form-field-user_id"})
</span>
</div>
</fieldset>
<div class="form-field__button">
<button id="loginButton" type="submit" class="button button--primary">Login</button>
</div>
}
<script>
$('#loginButton').click(function() {
$.ajax({
type: "POST",
url: '@Url.Action("Login", "Account")',
data: $('form').serialize(),
success: function (result) {
if (result.redirectTo) {
window.location.href = result.redirectTo;
} else {
$("#LoginForm").html(result);
}
},
error: function() {
$("#LoginForm").html(result);
}
});
});
</script>
नियंत्रक -
[HttpPost]
public ActionResult Login(LoginModel model)
{
if (!ModelState.IsValid)
{
return PartialView("~/Views/Account/_Login.cshtml", model);
}
return Json(new { redirectTo = Url.Action("Index", "Profile") });
}
आप आंशिक से अलग मुख्य पृष्ठ पर मॉडल स्थिति त्रुटियों को चाहते हैं? – lazy
आप केवल फॉर्म का आंशिक दृश्य वापस कर दें और मूल फ़ॉर्म को अजाक्स सफलता कॉलबैक –
में लौटाए गए HTML के साथ प्रतिस्थापित करें, मैं मॉडल स्थिति त्रुटियों में चाहता हूं आंशिक, बीओ आंशिक रूप से मुख्य पृष्ठ पर दिखाया जाना चाहिए क्योंकि यह फ़ॉर्म सबमिट करने से पहले था, अपने –