by wizbay
10. September 2010 02:29
Created a simple way to consume asp.net webservice using jquery. The webservice gets data from sql database and return result back as json data type.
Hope this help!
----------default.aspx------------------
<button type="button" onclick="button_onclick">Click</button>
<input type="text" id="txt_username" />
<input type="text" id="txt_email" />
----------main.js-----------------------
<script type="text/javascript">
function button_onclick() {
$.ajax({
type: "POST",
url: "../webservice.asmx/checkUserExist",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: "{username:'" + $("input#txt_username").val() + "',email:'" + $("input#txt_email").val() + "'}",
timeout: 10000,
success: function (result) {
if (result.d != null) {
var value = eval("(" + result.d + ")");
}
alert(value[0].result);
},
error: function (evt) {
alert(evt.status + "(" + evt.statusText + ")");
}
});
};
</script>
--------webservice.asmx------------------
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
Imports System.Data
Imports System.IO
Imports System.Data.SqlClient
Imports System.Web.Script
Imports System.Web.Script.Serialization
Imports System.Web.Script.Services
' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
<System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(Namespace:="http://domain.com")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class OPResume
Inherits System.Web.Services.WebService
Dim sql As String = String.Empty
Dim rs As SqlDataReader
<WebMethod()> _
Public Function checkUserExist(ByVal username As String, ByVal email As String) As String
Dim param(1) As SqlParameter
Dim result as string = string.empty
sql = "sp_checkUserExist"
param(0) = New SqlParameter("@username", username)
param(0).SqlDbType = SqlDbType.VarChar
param(1) = New SqlParameter("@email", email)
param(1).SqlDbType = SqlDbType.VarChar
Using db As New Database
rs = db.ExecuteReader(sql, param)
if rs.hasrow() then
rs.read()
result("[{")
result("""result"":""")
result(rs("result").ToString)
result("""}]")
end if
End Using
return result
End Function
End Class