Here i am passing Cars name which is an Array to WebMethod on button Click
<asp:Button ID="btnSave" Text="Save" runat="server" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.jsdelivr.net/json2/0.1/json2.js"></script>
<script type="text/javascript">
$(function () {
var cars = ["Saab", "Volvo", "BMW"];
$("[id*=btnSave]").bind("click", function () {
alert(JSON.stringify({ 'cars': cars }));
$.ajax({
type: "POST",
url: "CS.aspx/SaveCars",
data: JSON.stringify({ 'cars': cars }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
alert("User has been added successfully.");
window.location.reload();
}
});
return false;
});
});
</script>
WebMethod
[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public static void SaveCars(string[] cars)
{
string s = "";
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("INSERT INTO Cars VALUES(@CarName)"))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@CarName", cars[1]);
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
}