[英]Jquery validation in login form asp.net c# with webservice
你好我已經在asp.net中創建了一個登錄表單來重定向另一個頁面我已經創建了一個webservice用於用戶驗證和jquery但是ajax數據正在返回未定義頁面不重定向請幫助我...我的代碼是這樣的
網絡服務
[WebMethod]
public static string LoginSer(string un,string pwd)
{
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("select Username,Password from emp_Login where IsActive=1 and Username='" + un + "' and Password='" + pwd + "'", con))
{
con.Open();
cmd.ExecuteNonQuery();
con.Close();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
return "1";
}
else
{
return "0";
}
}
}
}
jQuery的
$(document).ready(function () {
$("#btnLogin").click(function () {
var uid = $("#txtUN").attr('value');
var pass = $("#txtPWD").attr('value');
$.ajax({
type: "POST",
url: "Login.aspx/LoginSer",
data: '{un: ' + uid + ', pwd: ' + pass + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
if (data.d == "1")
{
window.location.assign("../../Home.aspx");
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//alert(XMLHttpRequest.responseText);
var err = eval("(" + XMLHttpRequest.responseText + ")");
alert(err.Message);
}
});
});
});
我認為您在ajax調用中的URL不正確。 您需要提供服務名稱,例如Login.asmx,而不是頁面(即Login.aspx)。
我也不確定你傳遞數據的方式,但它可能是正確的。
。
這些是你犯的錯誤
Web api方法包含un & pwd作為您的參數,這意味着您應該使用查詢字符串來請求此調用
?UN =名稱和PWD =通行證
接下來,您將調用該服務並作為數據發送,該數據將查找包含與您的輸入數據相同的屬性的對象。
一個解決方案公共類登錄{public string un {get; 組; public string pwd {get; 組; }}
[WebMethod]
public static string LoginSer(Login user)
{
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("select Username,Password from emp_Login where IsActive=1 and Username='" + user.un + "' and Password='" + user.pwd + "'", con))
{
con.Open();
cmd.ExecuteNonQuery();
con.Close();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
return "1";
}
else
{
return "0";
}
}
}
}
$(document).ready(function () {
$("#btnLogin").click(function () {
var uid = $("#txtUN").attr('value');
var pass = $("#txtPWD").attr('value');
var userdata = {
"un": uid,
"pwd": pass
};
$.ajax({
type: "POST",
url: "Login.aspx/LoginSer",
data: userdata,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
if (data.d == "1")
{
window.location.assign("../../Home.aspx");
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//alert(XMLHttpRequest.responseText);
var err = eval("(" + XMLHttpRequest.responseText + ")");
alert(err.Message);
}
});
});
});
另一個解決方案是通過使用將值傳遞到查詢字符串來進行簡單修復
window.href
通過刪除contentType:“application / json; charset = utf-8”,
我有它...
成功運行......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.