과 ActionResult로 다시보기 대신 메시지를 보낼 수 I이 ASP.NET MVC4에서 다음 작업을나는 ASP.NET MVC4
public ActionResult Register(RegisterModel model)
{
if (ModelState.IsValid)
{
// Attempt to register the user
try
{
WebSecurity.CreateUserAndAccount(model.UserName, model.Password);
WebSecurity.Login(model.UserName, model.Password);
// ?? Need some code here
}
catch (MembershipCreateUserException e)
{
ModelState.AddModelError("", ErrorCodeToString(e.StatusCode));
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
I가이 호출하는 다음 코드를
을$('#article').on('submit', '#loginForm, #registerForm', function (e) {
e.preventDefault();
var $form = $(this);
var href= $form.attr('data-href');
$form.validate();
if (!$form.valid()) {
return false;
}
var data = $form.serializeArray();
$.ajax(
{
data: data,
type: 'POST',
url: href
})
.done(submitDone)
.fail(submitFail);
function submitDone(content) {
$('#article').html(content)
}
function submitFail() {
alert("Failed");
}
return false;
});
등록이 작동하면 전체 웹 페이지를 강제로 새로 고침하고 싶습니다. 할 수있는 방법이 있습니까 actionmethod에서 javacript에 ~ 으로 메시지를 다시 보내면 등록이 작동하고 자바 스크립트가 전체 웹 페이지를 새로 고쳐야한다고 말합니까?
나는 RedirectToLocal ("/"); 그러나 이것은 확실히 작동하지 않습니다. 이게 무엇입니까 새로운 페이지를 반환 한 다음 #article DIV에 채워 넣는 것입니다.
감사합니다. 네, 당신이 말하는 것을 깨닫고 이미 동의합니다. 내 질문은 성공을 말하기 위해 자바 스크립트로 메시지를 보낼 수있는 방법이 있었기 때문에 js가 페이지를 완전히 새로 고칠 수있게 만들었습니까? –
물론 JSON으로 콘텐츠를 포장하십시오. 클라이언트 측에서는 단순히 JSON을 구문 분석합니다. –