2017-03-06 42 views
0

你好,我有一個簡單的驗證,此功能可在「IF」我的Ajax功能,使用該功能兩個輸入 Im和我得到一個404錯誤網頁API 2 404(未找到)GET的Ajax功能

但是當我刪除這個簡單的「IF」我的AJAX功能正在完善我想一些幫助

function signInValidation(userNameLogin, passwordLogin) { 
    if (userNameLogin == "" || passwordLogin == "") { 
     $(document).ready(function() { 
      $("#effect").fadeIn(1000); 
      $("#effect").fadeOut(2000); 
     }) 
    } 
} 

,我有這個功能的AJAX GET

function GetUserLoginDetails() { 
    $(document).ready(function() { 
     $('#logInBtn').click(function (e) { 

      var UserName = $('#_logInUserName').val(); 
      var Password = $('#_logInPassword').val(); 

      if (signInValidation(UserName, Password)){ 
       $.ajax({ 
        url: 'http://localhost:56267/api/Users/GetUser' + '/' + UserName + '/' + Password, 
        type: 'Get', 
        dataType: 'json', 
        contentType: "application/json", 
        success: function (data, textStatus, xhr) { 
         console.log(data); 
         window.location.replace("http://localhost:59472/Views/UserPage.html"); 
        }, 
        error: function (xhr, textStatus, errorThrown) { 
         console.log('Error in Operation'); 
        } 
       }) 
      } 
      e.preventDefault(); 
     }) 
    }) 
} 
+0

你的'signInValidation'方法似乎沒有返回任何東西? –

+0

以及爲什麼你使用這麼多次'$(document).ready()' – mbeso

回答

0

原因對於沒有運行您的AJAX是由於你的signInValidation不返回任何東西,大概就是下面的你應該修改signInValidation方法:

function signInValidation(userNameLogin, passwordLogin) { 
    if (userNameLogin == "" || passwordLogin == "") { 
     $("#effect").fadeIn(1000); 
     $("#effect").fadeOut(2000); 
     return false; 
    } 
    else{ 
     return true; 
    } 
} 

signInValidation方法現在將返回true如果兩個用戶名和密碼被設置,否則,將返回false,這將在您的if語句中被檢查。

此外,$(document).ready()不應以您使用它的方式使用。 $(document).ready()當文檔被加載時被調用,應該不需要在您的signInValidation方法中使用。你可以閱讀更多關於它here

+0

非常感謝你 我已經修復了它 –

+0

@AdiOz沒問題!如果有幫助,請將答案標記爲正確 –