Check Uncheck CheckBox on Button Click with Button Text in ASP.Net MVC

Last Reply one year ago By chetan

Posted one year ago

I have button: Turn Email On and checkbox(which is unchecked) on side of that button.

When i click Turn email on button,it should call action method of controller where i have to write SP to update the email table.
like update tablename set isemailon_off=1 where isemailon_off=0.

Email table have one field: isemailon_off(int type).i inserted value 0 into it.

So, Turn email on button's text will become turn email off and checkbox becomes checked.

How to achieve this using Mvc?
Any help will be highly appreciated.

Turn Email ON (button) Checkbox(unchecked)

Turn Email Off (button) Chekbox(checked)

Posted one year ago

Hi chetan,

Check this example. Now please take its reference and correct your code.


CREATE TABLE EmailSubscription(Id INT IDENTITY PRIMARY KEY,isemailon_off INT)
INSERT INTO EmailSubscription VALUES(0)


public class CheckUnCheckModel
    public string ButtonText { get; set; }
    public bool CheckUnCheck { get; set; }


public class HomeController : Controller
    // GET: /Home/
    public ActionResult Index()
        CheckUnCheckModel model = BindCheckBoxButton();
        return View(model);

    private static CheckUnCheckModel BindCheckBoxButton()
        TestEntities entities = new TestEntities();
        EmailSubscription email = entities.EmailSubscriptions.FirstOrDefault();
        CheckUnCheckModel model = new CheckUnCheckModel();
        model.ButtonText = Convert.ToBoolean(email.isemailon_off) ? "Turn Email Off" : "Turn Email On";
        model.CheckUnCheck = Convert.ToBoolean(email.isemailon_off);
        return model;

    public ActionResult Index(string submit)
        TestEntities entities = new TestEntities();
        EmailSubscription email = entities.EmailSubscriptions.FirstOrDefault();
        email.isemailon_off = submit.ToLower() == "turn email on" ? 1 : 0;
        CheckUnCheckModel model = BindCheckBoxButton();
        return View(model);


<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<CheckUnCheckModel>" %>

<%@ Import Namespace="_834192_Check_UnCheck_CheckBox.Models" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head runat="server">
    <%using (Html.BeginForm("Index", "Home", FormMethod.Post))
      { %>
    <input type="submit" value='<%= Model.ButtonText%>' name="submit" />
    <input name="CheckUnCheck" <%=(Convert.ToBoolean(Model.CheckUnCheck) ?  "checked='checked'" : string.Empty)%>
        type="checkbox" />
    <%} %>


Posted one year ago

Finally worked..:)

        <div class="col-md-8 form-group" style="text-align:right;">
            <input type="button" value="Turn Email ON" class="btn btn-success" id="btnturnemailonoff" />
        <div class="col-md-2 form-group">
            <input type="checkbox" id="Chkemailonoff" />
        <script type="javascript">             
            $(document).ready(function () {
                $('#btnturnemailonoff').on('click', function () {                    
                    var checked = !$(this).data('checked');
                    $("#Chkemailonoff").prop('checked', checked);
                    $(this).val(checked ? 'Turn Email Off' : 'Turn Email on')
                    $(this).data('checked', checked);
                    var url = '@Url.Action("CheckEmail", "BillingDetails")';
                        url: url,
                        type: "POST",
                        data: { checkemails: checked },
                        dataType: "json",
                        // traditional: true,
                        success: function () {
                            alert("ajax request to server succeed");

Update model from the database...  

Controller code:

        public ActionResult CheckEmail(string checkemails)
            //calling Stored Procedure
            if (!string.IsNullOrWhiteSpace(checkemails))
                var checkemails1 = new SqlParameter("checkemails", checkemails);
                db.Database.ExecuteSqlCommand("EXEC Sp_Email_on_off @checkemails", checkemails1);

            return new JsonResult { };

Thank u so much Sir for the Help...highly appreciated...:)