2012-07-14 72 views
0

我添加了一個搖動畫動畫類(Css3),當文本框爲空時,但它不能正常工作,因爲asp.net mvc會將用戶重定向到主頁。任何處理這件事的方法。在asp.net中處理jquery函數mvc

public ActionResult Index() 
    { 
     return View(); 
    } 

    [HttpPost] 
    public ActionResult Index(string username, string password) 
    { 
     if (ModelState.IsValid) 
     { 
      return RedirectToAction("Index", "Product"); 
     } 
     else 
     { 
      return RedirectToAction("Index","Home"); 
     } 
    } 

jQuery函數

$('#loginButton').click(function() { 
    shaking(); 
}); 


function shaking() { 
    if ($('#username').val() || $('#password').val()) { 

    } 
    else { 
     $('#loginForm').addClass("shake"); 
     setTimeout(function() { 
      $('#loginForm').removeClass(); 
     }, 2000); 
    } 
}; 

回答

0

您需要防止您按一下按鈕的默認操作,否則它會導致提交表單(引起您注意的重定向)。如果您傳遞事件到您的功能,您可以防止通過調用事件preventDefault()如果相關字段沒有填寫提交。

$('#loginButton').click(function (e) { 
    shaking(e); 
}); 


function shaking(e) { 
    if ($('#username').val() && $('#password').val()) { // should be an && to check both 
     // do something if both username and password filled in 
    } 
    else { 
     e.preventDefault(); // prevent form from being submitted 

     $('#loginForm').addClass("shake"); 
     setTimeout(function() { 
      $('#loginForm').removeClass(); 
     }, 2000); 
    } 
};​ 
+0

注意'這裏e'是[jQuery的事件對象(HTTP ://api.jquery.com/category/events/event-object/) – nbrooks 2012-07-14 07:35:39