How to create a customized Calendar/Table control

Molnár István
Molnár István used Ask the Experts™
on
Hi All,

I need to create a web application/site in ASP.NET C# that uses a calendar-like table,
but I don't know where to start and how to accomplish this table.

calendar-like-control.PNG
The idea is, that the user:
-can navigate to previous week and next week
-can't use the Prev.Week button if it's on the current week ( the previous week button should be disabled)
-selects the right check-boxes and saves it in the DB

I tried to find a similar table, but I couldn't find one.

A source code would be helpful or a control.

thanks advanced
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®

Commented:
It's too customized for your specific needs, which sadly means you will have to program it yourself. It doesn't look like any existing date control either, so you really have to start from scratch. Here's some pseudo code, it might help you.

First page, start with today (Now()), generate the page, but enumerating this week's days, all the menu's and all the checkboxes.
Per checkbox, check the database if it should be checked or unchecked.
Check if the displayed dates are in the past or not, and enable/disable Previous button. Generate Next, Save and Reset buttons.
Previous means, take same function, but with one week less.
Next button same function, but next 7 days.
Save is enumerate all checkboxes, and saving it in the database.
Reset, is probably the same as the first showing (enumerate, check boxes according to database)

The display routine is probably the hardest to figure out, just create the table first in a WYSIWYG html table editor, then get the source code so you can easily use it to generate what you need.
I would use Datatables for that https://datatables.net/
with their editor https://editor.datatables.net/
Molnár IstvánHelpDesk / Programmer

Author

Commented:
@lenamtl i tried the mentioned website. I tried to generate a similar table, but without luck.

@Kimputer
I created a table in DW and used that HTML code in ASP.NET.
In C# I created a function that returns the HTML for the table. The returning string value i added to a div with runat="server" attribute.

the created table
Now, the table is almost done, but my problem is:
-  that I tried to add onclick/onserverclick/onchange events and runat="server" to the checkbox and is not executing.

When I check the source code, the event is preset and not fireing.
The strange thing is that if I add the runat="server" tag it is used like a string.

the c# code:
string generateTable(int daysToShow, int nrOfShifts,string[] menus, int NextPrevWeek)
{
        if (NextPrevWeek == 0)
            prevBtn.Disabled = true;
        else
            prevBtn.Disabled = false;
        StringBuilder sb = new StringBuilder();

        sb.AppendLine("<table width=\"100 % \" border=\"1\">");
        sb.AppendLine("<tbody>");

        string monName = "";
        string dayName = "";
        ...
                            if (checkedCheckBoxes!=null && checkedCheckBoxes.Contains(chkboxID.Replace(" ", "")) && IsPostBack)
                            {
                                sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" + chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" checked=\"True\" title=\"" + tooltip + "\"><label for=\"" + chkboxID.Replace(" ", "") + "\">"+ chkboxID + "</label></div></td>");
                            }
                            else
                            {
                                sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" + chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" title=\""+tooltip+"\"><label for=\"" + chkboxID.Replace(" ", "") + "\">" + chkboxID + "</label></div></td>");

                            }
        ...
        sb.AppendLine("</tbody>");
        sb.AppendLine("</table>");

        return sb.ToString();
}
protected void chkbox_Changed(object sender, EventArgs e)
    {
        CheckBox cb = (CheckBox)sender;
        selectedRows.InnerHtml = cb.ID; 
    }

Open in new window


in Browser:
...
<td><div class="fm-checkbox"><input type="checkbox"  onServerClick="chkbox_Changed" runat="server" name="checkbox" value="chk0_M0_D31012019S1"  id="chk0_M0_D31012019S1" class="i-checks" title="CheckboxID: 0
Meniu: Menu A
Data: 31/01/2019
Schimbul: 1"><label for="chk0_M0_D31012019S1">chk0_M0_D31012019S1</label></div></td>
...

Open in new window


Do you know, how can I resolve this problem?

Thanks advanced
Should you be charging more for IT Services?

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden using our free interactive tool and use it to determine the right price for your IT services. Start calculating Now!

Hi,

using Chrome right click / inspect check the console tab for errors
Commented:
Sorry, I was wrong to direct you to look at the table code and use that to implement your code. The checkbox event will not fire indeed.

Here's another idea, which is _functional_ but might not be as beautiful as yours (right now, you can try to adjust it to your liking:

ASPX
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    
    <form id="form1" runat="server">
        <div>
            <asp:PlaceHolder ID="PlaceHolder1" runat="server">
                </asp:PlaceHolder>

        </div>
    </form>
</body>
</html>

Open in new window


VB (yeah sorry, I'm waaaaaaaaay too slow with C#, would have taken me weeks, but I'm pretty sure you will know how to implement it anyway):

Partial Class Default2
    Inherits System.Web.UI.Page

    Private Sub form1_Load(sender As Object, e As EventArgs) Handles form1.Load
        Dim table1 As New Table
        Dim cb3 As New CheckBox

        table1.BorderWidth = 1
        table1.BorderStyle = BorderStyle.Double

        table1.Width = 200
        table1.BorderColor = System.Drawing.Color.FromArgb(230, 228, 195)
        Dim tRow_days As TableRow = New TableRow()
        Dim day_1 As TableCell = New TableCell()
        Dim day_2 As TableCell = New TableCell()
        Dim day_3 As TableCell = New TableCell()
        day_1.Text = "day_1"
        day_2.Text = "day_2"
        day_3.Text = "day_3"
        tRow_days.Cells.Add(day_1)
        tRow_days.Cells.Add(day_2)
        tRow_days.Cells.Add(day_3)

        table1.Rows.Add(tRow_days)

        Dim tRow_shift As TableRow = New TableRow()
        Dim day_1_shift_1 As TableCell = New TableCell()
        day_1_shift_1.Text = "day_1_shif_1"
        Dim day_1_shift_2 As TableCell = New TableCell()
        day_1_shift_2.Text = "day_1_shif_1"
        Dim day_1_shift_3 As TableCell = New TableCell()
        day_1_shift_3.Text = "day_1_shif_1"
        Dim day_2_shift_1 As TableCell = New TableCell()
        Dim day_2_shift_2 As TableCell = New TableCell()
        Dim day_2_shift_3 As TableCell = New TableCell()
        Dim day_3_shift_1 As TableCell = New TableCell()
        Dim day_3_shift_2 As TableCell = New TableCell()
        Dim day_3_shift_3 As TableCell = New TableCell()

        tRow_shift.Cells.Add(day_1_shift_1)
        tRow_shift.Cells.Add(day_1_shift_2)
        tRow_shift.Cells.Add(day_1_shift_3)
        tRow_shift.Cells.Add(day_2_shift_1)
        tRow_shift.Cells.Add(day_2_shift_2)
        tRow_shift.Cells.Add(day_2_shift_3)
        tRow_shift.Cells.Add(day_3_shift_1)
        tRow_shift.Cells.Add(day_3_shift_2)
        tRow_shift.Cells.Add(day_3_shift_3)




        table1.Rows.Add(tRow_shift)
        Dim trow_dynamic As TableRow = New TableRow()
        For i = 1 To 9 Step 1
            Dim dyn_tc As TableCell = New TableCell

            Dim checkbox2 As New CheckBox
            checkbox2.ID = "abc" + i.ToString
            checkbox2.AutoPostBack = True
            checkbox2.Checked = True
            AddHandler checkbox2.CheckedChanged, AddressOf checkbox2_CheckedChanged
            dyn_tc.Controls.Add(checkbox2)
            trow_dynamic.Cells.Add(dyn_tc)
        Next
        table1.Rows.Add(trow_dynamic)
        PlaceHolder1.Controls.Add(table1)

    End Sub


    Protected Sub checkbox2_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim cb As CheckBox = DirectCast(sender, CheckBox)
        Show(cb.ID.ToString)
    End Sub

    Public Sub Show(message As String)
        Dim cleanMessage As String = message.Replace("'", "\'")
        Dim page As Page = HttpContext.Current.CurrentHandler
        Dim script As String = String.Format("alert('{0}');", cleanMessage)
        If (page IsNot Nothing And Not page.ClientScript.IsClientScriptBlockRegistered("alert")) Then
            page.ClientScript.RegisterClientScriptBlock(page.GetType(), "alert", script, True) ' /* addScriptTags */
        End If
    End Sub

End Class

Open in new window


Either put the data in the database on EVERY click, or use the ID to put it in the database when a button is clicked.
Molnár IstvánHelpDesk / Programmer

Author

Commented:
I tried your code and it's firing,
but in my code, nothing happens when i select a checkbox.

A strange thing:
If I select a checkbox and after that I click the "Save Selected" button, the checkbox_CheckedChanged event is fired and after that saveBtn_OnClick.

Why is working like that?  What is the problem?

Thanks advanced

here is my aspx code:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"  %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta charset="utf-8"/>
    <meta charset="utf-8"/>
    <meta http-equiv="x-ua-compatible" content="ie=edge"/>
    <title>Form Element | Notika - Notika Admin Template</title>
    <meta name="description" content=""/>
    <meta name="viewport" content="width=device-width, initial-scale=1"/>
    <!-- favicon
		============================================ -->
    <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico"/>
    <!-- Google Fonts
		============================================ -->
    <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,700,900" rel="stylesheet"/>
    <!-- font awesome CSS
		============================================ -->
    <link rel="stylesheet" href="css/font-awesome.min.css"/>
    <!--debug-->
    <!-- Bootstrap CSS
		============================================ -->
    <link rel="stylesheet" href="css/bootstrap.min.css" type="text/css"/>
    <!-- wave CSS
		============================================ -->
    <link rel="stylesheet" href="css/wave/waves.min.css" type="text/css"/>
    <!-- dialog CSS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css"  type="text/css"/>
    <link rel="stylesheet" href="css/dialog/dialog.css"  type="text/css"/>
    <!-- style CSS
		============================================ -->
    <link rel="stylesheet" href="style.css"  type="text/css"/> 
    <!-- responsive CSS
		============================================ -->
    <link rel="stylesheet" href="css/responsive.css" type="text/css"/>
    <!---debug end-->
    <!-- animate CSS
		============================================ -->
    <link rel="stylesheet" href="css/animate.css"/>
    <!-- mCustomScrollbar CSS
		============================================ -->
    <link rel="stylesheet" href="css/scrollbar/jquery.mCustomScrollbar.min.css"/>
    <!-- Notika icon CSS
		============================================ -->
    <link rel="stylesheet" href="css/notika-custom-icon.css"/>
    <!-- responsive CSS
		============================================ -->
    <link rel="stylesheet" href="css/responsive.css"/>
    
    <!-- notification CSS
		============================================ -->
    <link rel="stylesheet" href="css/notification/notification.css"/>
        <!-- dialog CSS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css"/>
    <link rel="stylesheet" href="css/dialog/dialog.css"/>

    <!-- modernizr JS
		============================================ -->
    <script src="js/vendor/modernizr-2.8.3.min.js"></script>
        <!-- jquery
		============================================ -->
    <script src="js/vendor/jquery-1.12.4.min.js"></script>


    <style type="text/css">
        .button-icon-btn {
            text-align: center;
        }
    </style>
    <script>
    $(function () {
        initICheck();
    })

    function initICheck() {
            $('.fm-checkbox').iCheck();
            $('.icheckbox_square-green checked').iCheck()
            $('.i-checks').iCheck(); 
            $('.iCheck-helper').iCheck();

            var el = $('.icheckbox');
            el.addClass('icheckbox_square-green');
        el.removeClass('.icheckbox');

    }
</script>
<script>
                /*istvan*/
       function successalert() {
           swal("Good job!", "Lorem ipsum dolor cry sit amet, consectetur adipiscing elit. Sed lorem erat, tincidunt vitae ipsum et, Spensaduran pellentesque maximus eniman. Mauriseleifend ex semper, lobortis purus.", "success")
           //swal({});
           //swal.showLoading();
           //alert("Good job!");

           //swal('hi!', {
           //   title: 'Input something',
           //   type: 'question',
           //   input: 'text',
           //   showCancelButton: true
           // })
        }

        function warningalert() {
        swal({
            title: "Are you sure?",
            text: "You will not be able to recover this imaginary file!",
            type: "warning",
            showCancelButton: true,
            confirmButtonText: "Yes, delete it!",
        }).then(function () {
            swal("Deleted!", "Your imaginary file has been deleted.", "success");
                });
            alert("Are you sure?XXX");
        }
</script>
<%--    <script>
        function x() {
 
	/*----------------------
		Dialogs
	 -----------------------*/
            alert('Z');
	//Success Message
	$('#sasuccess').on('click', function(){
        swal("Good job!", "Lorem ipsum dolor cry sit amet, consectetur adipiscing elit. Sed lorem erat, tincidunt vitae ipsum et, Spensaduran pellentesque maximus eniman. Mauriseleifend ex semper, lobortis purus.", "success")
        alert('X');
	});

	//Warning Message
	$('#sawarning').on('click', function(){
		swal({   
			title: "Are you sure?",   
			text: "You will not be able to recover this imaginary file!",   
			type: "warning",   
			showCancelButton: true,   
			confirmButtonText: "Yes, delete it!",
		}).then(function(){
			swal("Deleted!", "Your imaginary file has been deleted.", "success"); 
            });
                alert('Y');
	});
};
    </script>--%>
</head>
<body>

    <form id="form1" runat="server"><%--UpdateMode="Conditional"--%>
   <asp:ScriptManager ID="ScriptManager1" runat="server"  ></asp:ScriptManager>
        <asp:UpdateProgress id="updateProgress" runat="server" DynamicLayout="true" AssociatedUpdatePanelID="UpdatePanel1">
        <ProgressTemplate>
            <div style="    position: absolute; margin: auto; left: 0; right: 0; top: 0; bottom: 0; vertical-align:middle; text-align:center;  z-index: 9999999; background-color: teal; opacity: 0.9; float:left">
                <asp:Image ID="imgUpdateProgress" runat="server" ImageUrl="~/images/loading.gif" AlternateText="Loading ..." ToolTip="Loading ..." style="padding: 10px;position:relative;  margin-left: auto;
  margin-right: auto; vertical-align:middle; text-align:center; background-color:teal" />
            </div>
        </ProgressTemplate>
</asp:UpdateProgress>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server"    >
            <Triggers>

            </Triggers>
            <ContentTemplate>
        <script>
            Sys.Application.add_load(initICheck); 
            //Sys.Application.add_load(successalert); 
            //Sys.Application.add_load(x);
        </script>
             
        <div id="generatedTable" runat="server"></div>

        <asp:PlaceHolder ID="PlaceHolder1" runat="server">
                </asp:PlaceHolder>
        <br/>
        <div class="button-icon-btn">
                <button id="prevBtn" class="btn btn-warning warning-icon-notika" type="button" onserverclick="prevBtn_OnClick" runat="server"><i class="notika-icon notika-left-arrow"></i> Prev Week</button>&nbsp;
                <button id="saveBtn" class="btn btn-teal teal-icon-notika" type="button"  onserverclick="saveBtn_OnClick" runat="server"><i class="notika-icon notika-checked"></i> Save Selected</button>&nbsp;&nbsp;
                <button id="resetBtn" class="btn btn-danger danger-icon-notika" type="button" onserverclick="resetBtn_OnClick" runat="server"><i class="notika-icon notika-close"></i> Reset All</button>&nbsp;
                <button id="undoBtn" class="btn btn-info info-icon-notika" type="button"  runat="server"><i class="notika-icon notika-refresh"></i> Undo Last</button>&nbsp;
                <button id="nextBtn" class="btn btn-warning warning-icon-notika" type="button" onserverclick="nextBtn_OnClick"  runat="server"><i class="notika-icon notika-right-arrow"></i> Next Week</button>
                <div style="float:right; padding-right:10px;">
                    <button id="adminBtn" class="btn btn-lightblue lightblue-icon-notika" type="button"  runat="server"><i class="notika-icon notika-settings"></i> Admin Panel</button>

                                <div class="dialog-pro dialog">
                                    <button id="logoutBtn" class="btn btn-deeporange deeporange-icon-notika" type="button"><i class="notika-icon notika-back"></i> Logout</button>
                                </div>
                </div>
        </div>
        <p id="selectedRows" runat="server"></p>
<!--Csabi begin-->
   <!--[if lt IE 8]>
            <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
        <![endif]-->
    <!-- Dialog area Start-->
    <div class="dialog-area">
        <div class="container">
            <div class="row">
                <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12">
                    <div class="dialog-inner mg-t-30">
                        <div class="contact-hd dialog-hd">
                            <h2>Dialog success message!</h2>
                            <p>A beautiful replacement for Javascript's boring dialog Alert</p>
                        </div>
                        <div class="dialog-pro dialog">
                            <button class="btn btn-info" id="sasuccess" runat="server" onserverclick="SuccessBtn_Click">Click me</button>
                        </div>
                    </div>
                </div>
                
               
                <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12">
                    <div class="dialog-inner mg-t-30">
                        <div class="contact-hd dialog-hd">
                            <h2>Dialog warning message</h2>
                            <p>A warning message, with a function attached to the "Confirm"-button...</p>
                        </div>
                        <div class="dialog-pro dialog">
                            <button class="btn btn-info" id="sawarning" type="button">Click me</button>
                        </div>
                    </div>
                </div>
            </div> 
        </div>
    </div>
    <!-- Dialog area End-->
<!--Csabi end-->
           </ContentTemplate>
        </asp:UpdatePanel>


        <!-- End Footer area-->
    <!-- jquery
		============================================ -->
    <script src="js/vendor/jquery-1.12.4.min.js"></script>
    <!-- meanmenu JS
		============================================ -->
    <script src="js/meanmenu/jquery.meanmenu.js"></script>
    <!-- meanmenu CSS
		============================================ -->
    <link rel="stylesheet" href="css/meanmenu/meanmenu.min.css"/>
    <!-- owl.carousel JS
		============================================ -->
    <script src="js/owl.carousel.min.js"></script>
    <!-- owl.carousel CSS
		============================================ -->
    <link rel="stylesheet" href="css/owl.carousel.css"/>
    <link rel="stylesheet" href="css/owl.theme.css"/>
    <link rel="stylesheet" href="css/owl.transitions.css"/>
    <!-- price-slider JS
		============================================ -->
    <script src="js/jquery-price-slider.js"></script>
    <!-- bootstrap JS
		============================================ -->
    <script src="js/bootstrap.min.js"></script>
    <!-- wow JS
		============================================ -->
    <script src="js/wow.min.js"></script>
    <!-- scrollUp JS
		============================================ -->
    <script src="js/jquery.scrollUp.min.js"></script>
    <!-- mCustomScrollbar JS
		============================================ -->
    <script src="js/scrollbar/jquery.mCustomScrollbar.concat.min.js"></script>
    <!-- icheck JS
		============================================ -->
    <script src="js/icheck/icheck.min.js"></script>
    <script src="js/icheck/icheck-active.js"></script>
    <!--  todo JS
		============================================ -->
    <script src="js/todo/jquery.todo.js"></script>
	<!-- wave CSS
		============================================ -->
    <link rel="stylesheet" href="css/wave/waves.min.css"/>
    <link rel="stylesheet" href="css/wave/button.css"/>
	<!--  wave JS
		============================================ -->
    <script src="js/wave/waves.min.js"></script>
    <script src="js/wave/wave-active.js"></script>
    <!-- autosize JS
		============================================ -->
    <script src="js/autosize.min.js"></script>
    <!-- plugins JS
		============================================ -->
    <script src="js/plugins.js"></script>
    <!-- main JS
		============================================ -->
    <script src="js/main.js"></script>
    <!--  Chat JS
		============================================ -->
    <!-- dialog CSS & JS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css"/>
    <link rel="stylesheet" href="css/dialog/dialog.css"/>
    <script src="js/dialog/sweetalert2.min.js"></script>
    <script src="js/dialog/dialog-active.js"></script>
    <!--  notification JS
		============================================ -->
    <script src="js/notification/bootstrap-growl.min.js"></script>
    <script src="js/notification/notification-active.js"></script>
    <!-- main CSS
		============================================ -->
    <link rel="stylesheet" href="css/main.css"/>
    <!-- style CSS
		============================================ -->
    <link rel="stylesheet" href="style.css"/>
    <!-- Bootstrap CSS
		============================================ -->
    <link rel="stylesheet" href="css/bootstrap.min.css"/>
    <!-- normalize CSS
		============================================ -->
    <link rel="stylesheet" href="css/normalize.css"/>


		<!-- istvan script
		============================================ -->
	<script>
        if (screen.width < 500) {
          $("body").addClass("nohover");
          $("td, th")
            .attr("tabindex", "1")
            // When they are tapped, focus them
            .on("touchstart", function() {
              $(this).focus();
            });
        }
	</script>
    <script>
                 function GetSelected() {
            var chected = new Array();
            $("[name='checkbox']").each(function (index, data) {
                if (data.checked) {
                    chected.push(data.value +"---"+data.nextSibling.textContent);
                }
            });
                     alert(chected);
        }
    </script>
    <style>
    .iCheck-helper {

        position: absolute;
        top: 0%;
        left: 0%;
        display: block;
        width: 100%;
        height: 100%;
        margin: 0px;
        padding: 0px;
        background: rgb(255, 255, 255) none repeat scroll 0% 0%;
        border: 0px none;
        opacity: 0;

    }
    th,td {
        text-align:center;
        border: 1px solid black;

    }
    </style>
    </form>
</body>
</html>

Open in new window


and the cs:

using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    CultureInfo culture = new System.Globalization.CultureInfo("ro-RO");
    string[] dayNames = null;
    string[] monthNames = null;
    string[] meniu = null;

    //debug variables
    int daysToshow = 7;
    int nrOfShifts = 3;
    int prevNextWeek = 0;
    //public event EventHandler<EventArgs> CheckChanged;
    //protected override void OnPreInit(EventArgs e)
    //{
    //    InitializeComponent();
    //    base.OnPreInit(e);
    //}

    //protected void InitializeComponent()
    //{
    //    culture = new System.Globalization.CultureInfo("ro-RO");

    //    dayNames = (culture).DateTimeFormat.DayNames;
    //    monthNames = (culture).DateTimeFormat.MonthNames;

    //    meniu = new string[] { "Menu A", "Meniu B", "Meniu V", "Meniu D", "Meniu S", "Meniu P", "Meniu X", "Meniu Y" };

    //    //?d=7&s=3&w=0&m=3
    //    //int daysToshow = Convert.ToInt32(Request.QueryString["d"]);
    //    //int nrOfShifts = Convert.ToInt32(Request.QueryString["s"]);
    //    //int prevNextWeek = Convert.ToInt32(Request.QueryString["w"]);
    //    //Array.Resize(ref meniu, Convert.ToInt32(Request.QueryString["m"]));
    //    loadJsAndCss();
    //    if (!IsPostBack)
    //    {
    //        Session["WeekNr"] = null;
    //        Session["Day"] = null;
    //        //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, prevNextWeek);
    //        //generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
    //    }
    //    else
    //    {
    //        ScriptManager1.Scripts.Add(new ScriptReference("js/vendor/jquery-1.12.4.min.js"));
    //        ScriptManager1.Scripts.Add(new ScriptReference("js/dialog/sweetalert2.min.js"));

    //    }
    //    generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
    //}

    protected void Page_init(object sender, EventArgs e)
    {
        loadJsAndCss();
        culture = new System.Globalization.CultureInfo("ro-RO");

        dayNames = (culture).DateTimeFormat.DayNames;
        monthNames = (culture).DateTimeFormat.MonthNames;

        meniu = new string[] { "Menu A", "Meniu B", "Meniu V", "Meniu D", "Meniu S", "Meniu P", "Meniu X", "Meniu Y" };

        //?d=7&s=3&w=0&m=3
        int daysToshow = Convert.ToInt32(Request.QueryString["d"]);
        int nrOfShifts = Convert.ToInt32(Request.QueryString["s"]);
        int prevNextWeek = Convert.ToInt32(Request.QueryString["w"]);
        Array.Resize(ref meniu, Convert.ToInt32(Request.QueryString["m"]));
        loadJsAndCss();
        if (!IsPostBack)
        {
            Session["WeekNr"] = null;
            Session["Day"] = null;
            //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, prevNextWeek);
            //generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
        }
        else
        {
            ScriptManager1.Scripts.Add(new ScriptReference("js/vendor/jquery-1.12.4.min.js"));
            ScriptManager1.Scripts.Add(new ScriptReference("js/dialog/sweetalert2.min.js"));

        }
        generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        //culture = new System.Globalization.CultureInfo("ro-RO");

        //dayNames = (culture).DateTimeFormat.DayNames;
        //monthNames = (culture).DateTimeFormat.MonthNames;

        //meniu = new string[] { "Menu A", "Meniu B", "Meniu V", "Meniu D", "Meniu S", "Meniu P", "Meniu X", "Meniu Y" };

        ////?d=7&s=3&w=0&m=3
        ////int daysToshow = Convert.ToInt32(Request.QueryString["d"]);
        ////int nrOfShifts = Convert.ToInt32(Request.QueryString["s"]);
        ////int prevNextWeek = Convert.ToInt32(Request.QueryString["w"]);
        ////Array.Resize(ref meniu, Convert.ToInt32(Request.QueryString["m"]));
        //loadJsAndCss();
        //if (!IsPostBack)
        //{
        //    Session["WeekNr"] = null;
        //    Session["Day"] = null;
        //    //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, prevNextWeek);
        //    //generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
        //}
        //else
        //{
        //    //ScriptManager1.Scripts.Add(new ScriptReference("js/vendor/jquery-1.12.4.min.js"));
        //    //ScriptManager1.Scripts.Add(new ScriptReference("js/dialog/sweetalert2.min.js"));

        //}
        //generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
    }

    private void loadJsAndCss()
    {
        //JQuery
        ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ1", "js/vendor/modernizr-2.8.3.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ2", "js/vendor/jquery-1.12.4.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ3", "js/bootstrap.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ4", "js/wow.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ5", "js/jquery-price-slider.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ6", "js/owl.carousel.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ7", "js/jquery.scrollUp.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ8", "js/meanmenu/jquery.meanmenu.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ9", "js/counterup/jquery.counterup.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ10", "js/counterup/waypoints.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ11", "js/counterup/counterup-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ12", "js/scrollbar/jquery.mCustomScrollbar.concat.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ13", "js/sparkline/jquery.sparkline.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ14", "js/sparkline/sparkline-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ15", "js/flot/jquery.flot.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ16", "js/flot/jquery.flot.resize.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ17", "js/flot/flot-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ8", "js/knob/jquery.knob.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ9", "js/knob/jquery.appear.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ20", "js/knob/knob-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ21", "js/icheck/icheck.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ22", "js/icheck/icheck-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ23", "js/todo/jquery.todo.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ24", "js/wave/waves.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ25", "js/wave/wave-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ26", "js/autosize.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ27", "js/plugins.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ28", "js/dialog/sweetalert2.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ29", "js/dialog/dialog-active.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ30", "js/notification/bootstrap-growl.min.js");
      ClientScript.RegisterClientScriptInclude(
this.GetType(), "JQ31", "js/notification/notification-active.js");
    }

    string generateTable(int daysToShow, int nrOfShifts,string[] menus, int NextPrevWeek)
    {
        if (NextPrevWeek == 0)
            prevBtn.Disabled = true;
        else
            prevBtn.Disabled = false;
        StringBuilder sb = new StringBuilder();

        sb.AppendLine("<table width=\"100 % \" border=\"1\">");
        sb.AppendLine("<tbody>");

        string monName = "";
        string dayName = "";
        for (int i = 0; i < menus.Length+2; i++)//daysToShow+1
        {
            switch (i)
            {
                case 0:
                    sb.AppendLine("<tr>");
                    sb.AppendLine("<th scope=\"col\">&nbsp;</th>");
                    for (int j = 0; j < daysToShow; j++)
                    {
                        monName = monthNames[DateTime.Now.AddDays(j+NextPrevWeek).Month-1].Substring(0, 3);
                        monName = char.ToUpper(monName[0]) + monName.Substring(1);
                        dayName = culture.DateTimeFormat.GetDayName(DateTime.Now.AddDays(j + NextPrevWeek).DayOfWeek);
                        dayName = char.ToUpper(dayName[0]) + dayName.Substring(1);
                        sb.AppendLine("<th scope=\"col\" colspan=\""+nrOfShifts+"\">"+dayName +" "+ DateTime.Now.AddDays(j + NextPrevWeek).Day + " , " +monName + " " + DateTime.Now.AddDays(j + NextPrevWeek).Year + "</th>");
                    }
                    sb.AppendLine("</tr>");
                    break;
                case 1:
                    sb.AppendLine("<tr>");
                    sb.AppendLine("<th scope=\"row\">&nbsp;</th>");
                    for (int j = 0; j < daysToShow; j++)
                    {
                        for (int k = 0; k < nrOfShifts; k++)
                        {
                            int shiftNr = k + 1;
                            sb.AppendLine("<th>Shift "+ shiftNr + " </th>");
                        }
                    }
                    sb.AppendLine("</tr>");
                    break;
                default:
                    sb.AppendLine("<tr>");                     
                    sb.AppendLine("<th scope=\"row\">" + menus[i-2]+ "</th>");
                    int calcSft = 0;
                    int nextDays = 0;
                    for (int k = 0; k < nrOfShifts * daysToShow; k++)
                        {
                                int menuID = i - 2;
                                int chekboxID = k + 1;
                                int prevnextDays = 0;
                                DateTime dateX = DateTime.Now;

                                if (k == 0)
                                    calcSft = 1;
                                else
                                    calcSft += 1;

                                if (Session["WeekNr"] != null)
                                    prevnextDays = (int)Session["WeekNr"];

                                if (k % nrOfShifts == 0 && k != 0)
                                    nextDays += 1;



                        dateX = DateTime.Now.AddDays(prevnextDays+ nextDays);
                                
                                
                        string chkboxID = "chk" + k + "_M"+ menuID+"_D"+dateX.Day.ToString("00")+dateX.Month.ToString("00")+dateX.Year+"S"+calcSft;
                        string tooltip = "CheckboxID: " + k + "\n" + "Meniu: " + meniu[menuID] + "\n" + "Data: " + dateX.Day.ToString("00") + "/" + dateX.Month.ToString("00") + "/" + dateX.Year + "\n" + "Schimbul: " + calcSft;
                            List<string> checkedCheckBoxes = null;
                            if (Session["chkbox_Checked"]!=null)
                                checkedCheckBoxes = new List<string>((List<string>)Session["chkbox_Checked"]);
                          
                            if (checkedCheckBoxes!=null && checkedCheckBoxes.Contains(chkboxID.Replace(" ", "")) && IsPostBack)
                            {
                                sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" + chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" checked=\"True\" title=\"" + tooltip + "\"><label for=\"" + chkboxID.Replace(" ", "") + "\">"+ chkboxID + "</label></div></td>");
                            }
                            else
                            {
                                sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" + chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" title=\""+tooltip+"\"><label for=\"" + chkboxID.Replace(" ", "") + "\">" + chkboxID + "</label></div></td>");

                            }

                        if (calcSft % nrOfShifts == 0)
                            calcSft = 0;
                    }
                    sb.AppendLine("</tr>");
                    break;
            }

        }

        sb.AppendLine("</tbody>");
        sb.AppendLine("</table>");

        //StringWriter sw = new StringWriter(sb);
        //System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);

        //CheckBox lblDynamic = new CheckBox();
        //lblDynamic.Text = sb.ToString();
        //generatedTable.Controls.Add(lblDynamic);

        return sb.ToString();//new HtmlString(sb.ToString()).ToString();
    }

    string generateTable2(int daysToShow, int nrOfShifts, string[] menus, int NextPrevWeek)
    {


        PlaceHolder1.Controls.Clear();
        if (NextPrevWeek == 0)
            prevBtn.Disabled = true;
        else
            prevBtn.Disabled = false;
        StringBuilder sb = new StringBuilder();

        Table table = new Table();
        CheckBox cb = new CheckBox();



       // sb.AppendLine("<table width=\"100 % \" border=\"1\">");
        table.Width = new Unit("100%");
        table.BorderWidth = 1;
        table.BorderColor = Color.Black;
        table.BorderStyle = BorderStyle.Solid;

        //sb.AppendLine("<tbody>");
       // table.

        string monName = "";
        string dayName = "";
        for (int i = 0; i < menus.Length + 2; i++)//daysToShow+1
        {
            switch (i)
            {
                case 0:
                    //sb.AppendLine("<tr>");
                    TableRow row0 = new TableRow();

                    //sb.AppendLine("<th scope=\"col\">&nbsp;</th>");
                    TableHeaderCell th0 = new TableHeaderCell();
                    th0.Scope = TableHeaderScope.Column;
                    th0.Text = "&nbsp;";

                    row0.Cells.Add(th0);
                    for (int j = 0; j < daysToShow; j++)
                    {
                        monName = monthNames[DateTime.Now.AddDays(j + NextPrevWeek).Month - 1].Substring(0, 3);
                        monName = char.ToUpper(monName[0]) + monName.Substring(1);
                        dayName = culture.DateTimeFormat.GetDayName(DateTime.Now.AddDays(j + NextPrevWeek).DayOfWeek);
                        dayName = char.ToUpper(dayName[0]) + dayName.Substring(1);

                        //sb.AppendLine("<th scope=\"col\" colspan=\"" + nrOfShifts + "\">" + dayName + " " + DateTime.Now.AddDays(j + NextPrevWeek).Day + " , " + monName + " " + DateTime.Now.AddDays(j + NextPrevWeek).Year + "</th>");
                        TableHeaderCell th00 = new TableHeaderCell();
                        th00.Scope = TableHeaderScope.Column;
                        th00.ColumnSpan = nrOfShifts;
                        th00.Text = dayName + " " + DateTime.Now.AddDays(j + NextPrevWeek).Day + " , " + monName + " " + DateTime.Now.AddDays(j + NextPrevWeek).Year;

                        row0.Cells.Add(th00);
                    }
                    //sb.AppendLine("</tr>");
                    table.Rows.Add(row0);
                    break;
                case 1:
                    //sb.AppendLine("<tr>");
                    TableRow row1 = new TableRow();

                    //sb.AppendLine("<th scope=\"row\">&nbsp;</th>");

                    TableHeaderCell th1 = new TableHeaderCell();
                    th1.Scope = TableHeaderScope.Column;
                    th1.Text = "&nbsp;";

                    row1.Cells.Add(th1);
                    for (int j = 0; j < daysToShow; j++)
                    {
                        for (int k = 0; k < nrOfShifts; k++)
                        {
                            int shiftNr = k + 1;
                            // sb.AppendLine("<th>Shift " + shiftNr + " </th>");
                            TableHeaderCell th01 = new TableHeaderCell();
                            th01.Text = shiftNr.ToString();

                            row1.Cells.Add(th01);
                        }
                    }
                    //sb.AppendLine("</tr>");
                    table.Rows.Add(row1);
                    break;
                default:
                    //sb.AppendLine("<tr>");
                    TableRow row2 = new TableRow();

                    //sb.AppendLine("<th scope=\"row\">" + menus[i - 2] + "</th>");
                    TableHeaderCell th2 = new TableHeaderCell();
                    th2.Scope = TableHeaderScope.Row;
                    th2.Text = menus[i - 2].ToString();

                    row2.Cells.Add(th2);

                    int calcSft = 0;
                    int nextDays = 0;
                    for (int k = 0; k < nrOfShifts * daysToShow; k++)
                    {
                        int menuID = i - 2;
                        int chekboxID = k + 1;
                        int prevnextDays = 0;
                        DateTime dateX = DateTime.Now;

                        if (k == 0)
                            calcSft = 1;
                        else
                            calcSft += 1;

                        if (Session["WeekNr"] != null)
                            prevnextDays = (int)Session["WeekNr"];

                        if (k % nrOfShifts == 0 && k != 0)
                            nextDays += 1;



                        dateX = DateTime.Now.AddDays(prevnextDays + nextDays);


                        string chkboxID = "chk" + k + "_M" + menuID + "_D" + dateX.Day.ToString("00") + dateX.Month.ToString("00") + dateX.Year + "S" + calcSft;
                        string tooltip = "CheckboxID: " + k + "\n" + "Meniu: " + meniu[menuID] + "\n" + "Data: " + dateX.Day.ToString("00") + "/" + dateX.Month.ToString("00") + "/" + dateX.Year + "\n" + "Schimbul: " + calcSft;
                        List<string> checkedCheckBoxes = null;
                        if (Session["chkbox_Checked"] != null)
                            checkedCheckBoxes = new List<string>((List<string>)Session["chkbox_Checked"]);

                        if (checkedCheckBoxes != null && checkedCheckBoxes.Contains(chkboxID.Replace(" ", "")) && IsPostBack)
                        {
                            /* sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" 
                                 + chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" checked=\"True\" title=\"" + tooltip + "\"><label for=\"" 
                                 + chkboxID.Replace(" ", "") + "\">" + chkboxID + "</label></div></td>");*/
                            TableCell tc1 = new TableCell();

                            System.Web.UI.HtmlControls.HtmlGenericControl div1 =
       new System.Web.UI.HtmlControls.HtmlGenericControl("div");
                            div1.Attributes["class"] = "fm-checkbox";

                            CheckBox cb1 = new CheckBox();
                            cb1.ID = chkboxID.Replace(" ", "");
                            cb1.AutoPostBack = true;
                            cb1.CheckedChanged += new EventHandler(this.checkbox_CheckedChanged);
                                //cb.Attributes["name"] = "checkbox";
                                //cb.InputAttributes.Add("name", "checkbox");
                                //cb.Attributes["type"] = "checkbox";
                                // cb.InputAttributes.Add("type", "checkbox");
                                //cb.Attributes["value"] = chkboxID.Replace(" ", "");
                            cb1.InputAttributes.Add("value", chkboxID.Replace(" ", ""));
                                //cb.Attributes["class"] = "i-checks";
                            cb1.InputAttributes.Add("class", "i-checks");
                                // cb.Attributes["checked"] = "True";
                                //cb.InputAttributes.Add("checked", "True");
                                //cb.Attributes["title"] = tooltip;
                            cb1.InputAttributes.Add("title", tooltip);
                                //cb.Attributes["runat"] = "server";
                                //cb.InputAttributes.Add("runat", "server");
                            cb1.Checked = true;
                            cb1.EnableViewState = false;
                            div1.Controls.Add(cb1);

                            Label lb1 = new Label();
                            lb1.Attributes["for"] = chkboxID.Replace(" ", "");
                            //lb1.Text = chkboxID;
                            div1.Controls.Add(lb1);

                            tc1.Controls.Add(div1);
                            row2.Cells.Add(tc1);
                           // row2.Controls.Add(tc1);
                        }
                        else
                        {
                            /* sb.AppendLine("<td><div class=\"fm-checkbox\"><input type=\"checkbox\"  onServerClick=\"chkbox_Changed\" runat=\"server\" name=\"checkbox\" value=\"" +
                                 chkboxID.Replace(" ", "") + "\"  id=\"" + chkboxID.Replace(" ", "") + "\" class=\"i-checks\" title=\"" + tooltip + "\"><label for=\"" + chkboxID.Replace(" ", "") +
                                 "\">" + chkboxID + "</label></div></td>");*/
                            TableCell tc2 = new TableCell();

                            System.Web.UI.HtmlControls.HtmlGenericControl div2 =
       new System.Web.UI.HtmlControls.HtmlGenericControl("div");
                            div2.Attributes["class"] = "fm-checkbox";


                            CheckBox cb2 = new CheckBox();
                            cb2.ID = chkboxID.Replace(" ", "");
                            cb2.AutoPostBack = true;
                            cb2.CheckedChanged += new EventHandler(this.checkbox_CheckedChanged);

                                //cb.Attributes["name"] = "checkbox";
                                //cb.InputAttributes.Add("name", "checkbox");
                                //cb.Attributes["type"] = "checkbox";
                                //cb.InputAttributes.Add("type", "checkbox");
                                //cb.Attributes["value"] = chkboxID.Replace(" ", "");
                            cb2.InputAttributes.Add("value", chkboxID.Replace(" ", ""));
                                //cb.Attributes["class"] = "i-checks";
                            cb2.InputAttributes.Add("class", "i-checks");
                                // cb.Attributes["checked"] = "True";
                                //cb.InputAttributes.Add("checked", "True");
                                //cb.Attributes["title"] = tooltip;
                            cb2.InputAttributes.Add("title", tooltip);
                                //cb.Attributes["runat"] = "server";
                                //cb.InputAttributes.Add("runat", "server");
                            cb2.Checked = false;
                            cb2.EnableViewState = false;
                            div2.Controls.Add(cb2);


                            Label lb2 = new Label();
                            lb2.Attributes["for"] = chkboxID.Replace(" ", "");
                            //lb2.Text = chkboxID;
                            div2.Controls.Add(lb2);

                            tc2.Controls.Add(div2);
                            row2.Cells.Add(tc2);
                            //row2.Controls.Add(tc2);
                        }

                        if (calcSft % nrOfShifts == 0)
                            calcSft = 0;
                    }
                    // sb.AppendLine("</tr>");
                    table.Rows.Add(row2);
                    break;
            }

        }

        //sb.AppendLine("</tbody>");
        // sb.AppendLine("</table>");
        PlaceHolder1.Controls.Add(table);
        //StringWriter sw = new StringWriter(sb);
        //System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);

        //CheckBox lblDynamic = new CheckBox();
        //lblDynamic.Text = sb.ToString();
        //generatedTable.Controls.Add(lblDynamic);

        return sb.ToString();//new HtmlString(sb.ToString()).ToString();
    }

    protected void saveBtn_OnClick(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(1000);
        String str1 = "";
        foreach (Control c in form1.Controls)
        {
            if ((c is CheckBox) && ((CheckBox)c).Checked)
                str1 += ((CheckBox)c).Text + ", ";
        }




        //Session["chkbox_Checked"] = null;
        List<string> checkedCheckBoxes = null;

        if (Request.Form["checkbox"]!=null)
            checkedCheckBoxes = Request.Form["checkbox"].Split(',').ToList();

        int days = 0;
        if ((checkedCheckBoxes!=null) && (checkedCheckBoxes.ToString()!=""))
        {
            if (Session["chkbox_Checked"] != null)
            {
                ((List<string>)Session["chkbox_Checked"]).AddRange(checkedCheckBoxes);
                Session["chkbox_Checked"] = ((List<string>)Session["chkbox_Checked"]).Distinct().ToList();
                ((List<string>)Session["chkbox_Checked"]).Sort();
            }
            else
            {
                Session["chkbox_Checked"] = checkedCheckBoxes;
            }
            //int days = 0;
            if (Session["WeekNr"] != null)
                days = (int)Session["WeekNr"];
            else
                days = prevNextWeek;
            //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, days);
            //generateTable2(daysToshow, nrOfShifts, meniu, days);
        }
        generateTable2(daysToshow, nrOfShifts, meniu, days);
        if (Session["chkbox_Checked"] != null)
            selectedRows.InnerHtml = string.Join(",", ((List<string>)Session["chkbox_Checked"])).Replace(",","<br/>");
    }

    protected void resetBtn_OnClick(object sender, EventArgs e)
    {
            Session["chkbox_Checked"] = null;
        //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, prevNextWeek);
        generateTable2(daysToshow, nrOfShifts, meniu, prevNextWeek);
        selectedRows.InnerHtml = "- unselected -";
    }
    int prev = 0;
    protected void prevBtn_OnClick(object sender, EventArgs e)
    {
        //Session["chkbox_Checked"] = null;

        if (Session["WeekNr"]!=null)
            prev=(int)Session["WeekNr"];
        prev += -7;
        Session["WeekNr"] = prev;
        //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, prev);
        generateTable2(daysToshow, nrOfShifts, meniu, prev);
    }
    int next = 0;
    protected void nextBtn_OnClick(object sender, EventArgs e)
    {
        //Session["chkbox_Checked"] = null;
        if (Session["WeekNr"] != null)
            next = (int)Session["WeekNr"];
        next += +7;
        Session["WeekNr"] = next;
        //generatedTable.InnerHtml = generateTable(daysToshow, nrOfShifts, meniu, next);
        generateTable2(daysToshow, nrOfShifts, meniu, next);
    }
    protected void checkbox_CheckedChanged(object sender, EventArgs e)
    {
        CheckBox cb = (CheckBox)sender;
        selectedRows.InnerHtml = cb.ID; 
    }

    protected void SuccessBtn_Click(object sender, EventArgs e)
    {
        ScriptManager.RegisterStartupScript(this, GetType(), "Popup", "successalert();", true);
    }
    protected void WarningBtn_Click(object sender, EventArgs e)
    {
        ScriptManager.RegisterStartupScript(this, GetType(), "Popup", "warningalert();", true);
    }
}

Open in new window


HTML source:
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta charset="utf-8" /><meta charset="utf-8" /><meta http-equiv="x-ua-compatible" content="ie=edge" /><title>
	Form Element | Notika - Notika Admin Template
</title><meta name="description" /><meta name="viewport" content="width=device-width, initial-scale=1" />
    <!-- favicon
		============================================ -->
    <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
    <!-- Google Fonts
		============================================ -->
    <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,700,900" rel="stylesheet" />
    <!-- font awesome CSS
		============================================ -->
    <link rel="stylesheet" href="css/font-awesome.min.css" />
    <!--debug-->
    <!-- Bootstrap CSS
		============================================ -->
    <link rel="stylesheet" href="css/bootstrap.min.css" type="text/css" />
    <!-- wave CSS
		============================================ -->
    <link rel="stylesheet" href="css/wave/waves.min.css" type="text/css" />
    <!-- dialog CSS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css" type="text/css" /><link rel="stylesheet" href="css/dialog/dialog.css" type="text/css" />
    <!-- style CSS
		============================================ -->
    <link rel="stylesheet" href="style.css" type="text/css" /> 
    <!-- responsive CSS
		============================================ -->
    <link rel="stylesheet" href="css/responsive.css" type="text/css" />
    <!---debug end-->
    <!-- animate CSS
		============================================ -->
    <link rel="stylesheet" href="css/animate.css" />
    <!-- mCustomScrollbar CSS
		============================================ -->
    <link rel="stylesheet" href="css/scrollbar/jquery.mCustomScrollbar.min.css" />
    <!-- Notika icon CSS
		============================================ -->
    <link rel="stylesheet" href="css/notika-custom-icon.css" />
    <!-- responsive CSS
		============================================ -->
    <link rel="stylesheet" href="css/responsive.css" />
    
    <!-- notification CSS
		============================================ -->
    <link rel="stylesheet" href="css/notification/notification.css" />
        <!-- dialog CSS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css" /><link rel="stylesheet" href="css/dialog/dialog.css" />

    <!-- modernizr JS
		============================================ -->
    <script src="js/vendor/modernizr-2.8.3.min.js"></script>
        <!-- jquery
		============================================ -->
    <script src="js/vendor/jquery-1.12.4.min.js"></script>


    <style type="text/css">
        .button-icon-btn {
            text-align: center;
        }
    </style>
    <script>
    $(function () {
        initICheck();
    })

    function initICheck() {
            $('.fm-checkbox').iCheck();
            $('.icheckbox_square-green checked').iCheck()
            $('.i-checks').iCheck(); 
            $('.iCheck-helper').iCheck();

            var el = $('.icheckbox');
            el.addClass('icheckbox_square-green');
        el.removeClass('.icheckbox');

    }
</script>
<script>
                /*istvan*/
       function successalert() {
           swal("Good job!", "Lorem ipsum dolor cry sit amet, consectetur adipiscing elit. Sed lorem erat, tincidunt vitae ipsum et, Spensaduran pellentesque maximus eniman. Mauriseleifend ex semper, lobortis purus.", "success")
           //swal({});
           //swal.showLoading();
           //alert("Good job!");

           //swal('hi!', {
           //   title: 'Input something',
           //   type: 'question',
           //   input: 'text',
           //   showCancelButton: true
           // })
        }

        function warningalert() {
        swal({
            title: "Are you sure?",
            text: "You will not be able to recover this imaginary file!",
            type: "warning",
            showCancelButton: true,
            confirmButtonText: "Yes, delete it!",
        }).then(function () {
            swal("Deleted!", "Your imaginary file has been deleted.", "success");
                });
            alert("Are you sure?XXX");
        }
</script>

</head>
<body>

    <form method="post" action="./Default.aspx?d=7&amp;s=3&amp;w=0&amp;m=3" id="form1">
<div class="aspNetHidden">
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="Jk95HBLAyL8BtjrO5HNQd5Gs0jZ2mtbnLIVzuUIFON2oRHXaHTWhkhuL4CHui16YQuaKvOKy9NkzojvjrjHZMXt/SpefjQd5LCOS/3h/ledM5mmRcduPNEMqW0tCdD2A/Q9i1uMW6f7hhBLr+BPAbnr7tfFdlCbbe9S0c1czs9y7DsJ9maSlocnBXo2GVfOSaU2uTAhvPHwngUVxWsFbKZ4ImT+laOq2AMKH6zGQzIbzXF/jqSibVvISwCddue6Ma8aamUN4V4pv62cXM8QLb9o7+PiNDE8B88sGD2Ii5HGys+T2CIX3r+YN9JtO1X1A11xPZNBmOmbc3rphraPeOlUuBskln5jON+RMvozQC/atkUfq8/nS5CG8bbRfZxCsZVCwRnhOiUEWPrwdijnAfB2MG/iVvBY2WD3HMijOoYAYOI7tmrvVjLkqUsTgNPeaLMTOlmJtO3YiDgGEI1AkDAmUUsPRznR4hkdQBeUl4ZlVKwxl43tq1A8+i4zAm2wjDi/ztz4ZxnwYq5l5umuU6Te54r83w+i3MJQZwLv0wvKeGx0Z3gqK6rUqwF3Ga6GApCVOiROAHWdnJ2N/5rZzf7s9ot6LduwzYG0kQu6iAUQnl66PVFV+o/GAXtukKGwA/XHxxHVgTf4J74NUaTHDYTrADO3p760YaTv/6sQh1wEoJYXbvsM/zHGwEYFwRM/1phDG1IvjPdGBU4xI6zJIgOSK/tSFO0AZz9T9IedLutTEnNzPSLpwFgvMINh7nqOpPfQsa4gqzaL1CILgpxvLDtaVT9A6NjtfN00GQTaaZH66WwMYKkfr6kXHeNWR+8tuLCLnYMNxWe1lQ7JHyRb9VuGMQGJbBlOcN7BLm6GGaEp0EInd7CXgmAaj3//7YQF4nfO05E+UzLOEero6PDX0k42C/8kg6uVA+MJ+954yZ8XIHJzbQd8FnTtKpPc0gs+SNiGysWtkbHN82NsMZDSSBWH6QFWzcMTXvBwpBR7NOBXlELQAUuWTaO07qj8OwPsitaLQjy81WRfghxlT04ODsH1BYoUhq6A8vf4FwyOQcEHVTIsnZw2cIVrI2V2+YafEWzX97G7dHDlYLHhVIufmHAostOFgMc8YHMi9kWbx13K2z0SDx3w4sf241eKB13qoOYV3ZqE/P7Mytc2rfWNHd5hZaCfD8kzj8kB9N4yhz4/HLBPOHEE6MgA5kpYzVOoz7KbqqK42Slmcbl5O7EI3+OULEeS4Bp9aEmbQnEtKf8h6SD4gViN8wl/BbpcTqbt50HSF/CbtOhsCTpctAu8D0J6oS1HekSfB19znnRXSZ8owoiiMNW/SIXqC1SgapfhvtGv/EkVxfrJLI9rI3XCLG/mBPa23laIIQ0uFQKfSjXyG4WO19SxU4RbzNierrwIyOoicmXa+wTgNLy6LhMSLbV7oV+WwZEA7hVOUD3H8mPktp+oTQA+19E/dfSoMf0gGnLJ38dhAGDpr/dMhKd5rY++2FbaH1/uXLaAyrZ4NyCpvks0I0z+kR5G0Mj91DooWwme1pXk5tE+XQ3DZS7n3PCsRxycte23YU6PyqcgMXbgv6es65O3D3mS9fNApU7llgtgj9eL6qX81METfpBkHG73vzmZfBH9NAbac/N66Pmi/IGeBl86rr8DcyRelJbrvA2ppuXSkdmpkiXM+/U2yUzL2T9rjAUVXSxvWoc9ZOWhyms3p1PyFAJtI5cNFVLHWmQVbdYWNqaqfmqDHNCA+c8nEUtHWidzUy68//e+4HSnRFkvZfjIlpEZJJ4q+BBHOblVWNKQq+WTHMg8b/fX4/yhITxAyZGi1GdUJw3Y4pcbEBNlbGkAE1fxRRL2mF+bNzPRxHmEPovKZFeXRBVFGOAZGqtyLQC1EhSKXNlx3+n3JKy6TKccChU2+zUYZIHxG8S/vkW/IdwVyaXLiZ1w/vPtvR8x9jIoVjVWgvSVmPmhW2ucPZBU1avEg+AhFJlhi5j4RJ7B7Y0f5DjZKjKzy9Q==" />
</div>

<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['form1'];
if (!theForm) {
    theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
//]]>
</script>


<script src="/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZPi3h8cU-TS41GBZefNmpY1WsiDyWIO3KAB9uSiglaglnHu1U8W0W6FcEWbj_kYK2A2&amp;t=636825133778261603" type="text/javascript"></script>


<script src="js/vendor/modernizr-2.8.3.min.js" type="text/javascript"></script>
<script src="js/vendor/jquery-1.12.4.min.js" type="text/javascript"></script>
<script src="js/bootstrap.min.js" type="text/javascript"></script>
<script src="js/wow.min.js" type="text/javascript"></script>
<script src="js/jquery-price-slider.js" type="text/javascript"></script>
<script src="js/owl.carousel.min.js" type="text/javascript"></script>
<script src="js/jquery.scrollUp.min.js" type="text/javascript"></script>
<script src="js/meanmenu/jquery.meanmenu.js" type="text/javascript"></script>
<script src="js/counterup/jquery.counterup.min.js" type="text/javascript"></script>
<script src="js/counterup/waypoints.min.js" type="text/javascript"></script>
<script src="js/counterup/counterup-active.js" type="text/javascript"></script>
<script src="js/scrollbar/jquery.mCustomScrollbar.concat.min.js" type="text/javascript"></script>
<script src="js/sparkline/jquery.sparkline.min.js" type="text/javascript"></script>
<script src="js/sparkline/sparkline-active.js" type="text/javascript"></script>
<script src="js/flot/jquery.flot.js" type="text/javascript"></script>
<script src="js/flot/jquery.flot.resize.js" type="text/javascript"></script>
<script src="js/flot/flot-active.js" type="text/javascript"></script>
<script src="js/knob/knob-active.js" type="text/javascript"></script>
<script src="js/icheck/icheck.min.js" type="text/javascript"></script>
<script src="js/icheck/icheck-active.js" type="text/javascript"></script>
<script src="js/todo/jquery.todo.js" type="text/javascript"></script>
<script src="js/wave/waves.min.js" type="text/javascript"></script>
<script src="js/wave/wave-active.js" type="text/javascript"></script>
<script src="js/autosize.min.js" type="text/javascript"></script>
<script src="js/plugins.js" type="text/javascript"></script>
<script src="js/dialog/sweetalert2.min.js" type="text/javascript"></script>
<script src="js/dialog/dialog-active.js" type="text/javascript"></script>
<script src="js/notification/bootstrap-growl.min.js" type="text/javascript"></script>
<script src="js/notification/notification-active.js" type="text/javascript"></script>
<script src="/ScriptResource.axd?d=D9drwtSJ4hBA6O8UhT6CQv9CGTg_eQ6iL5xVVOJgyKxSEeC5gh9BdpDuEhzfPhG5eOy2stzlCcNoFlH07Iq1ZHQWkJzEBwPuWZbReVIErl53rA7FRLQMYx4JcjrbEW6O674lgmdU3qrX_Pt3nv-tOHv62YgVtkYZ2BnYA3NBFOM1&amp;t=ffffffff999c3159" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
if (typeof(Sys) === 'undefined') throw new Error('ASP.NET Ajax client-side framework failed to load.');
//]]>
</script>

<script src="/ScriptResource.axd?d=JnUc-DEDOM5KzzVKtsL1tf4rD8GDG3CaqG0M4jyv7NfD2up61u5rXfPVIG026K_6U7cee5pl-IMW0TWQ0K7fIT28jAgCB_3YiAAxxvw3-_6U4izz0bl7j_8BKpzvLPHsxF0fobGhGVgWgyi_kqyMXlFyw5PYcTTJi1tdrRkFhLcgAF6VKB4SWF1iVjWnoQdm0&amp;t=ffffffff999c3159" type="text/javascript"></script>
   <script type="text/javascript">
//<![CDATA[
Sys.WebForms.PageRequestManager._initialize('ScriptManager1', 'form1', ['tUpdatePanel1','UpdatePanel1'], [], [], 90, '');
//]]>
</script>

        <div id="updateProgress" style="display:none;">
	
            <div style="    position: absolute; margin: auto; left: 0; right: 0; top: 0; bottom: 0; vertical-align:middle; text-align:center;  z-index: 9999999; background-color: teal; opacity: 0.9; float:left">
                <img id="imgUpdateProgress" title="Loading ..." src="images/loading.gif" alt="Loading ..." style="padding: 10px;position:relative;  margin-left: auto;
  margin-right: auto; vertical-align:middle; text-align:center; background-color:teal" />
            </div>
        
</div>
        <div id="UpdatePanel1">
	
        <script>
            Sys.Application.add_load(initICheck); 
            //Sys.Application.add_load(successalert); 
            //Sys.Application.add_load(x);
        </script>
             
        <div id="generatedTable"></div>

        <table style="border-color:Black;border-width:1px;border-style:Solid;width:100%;">
		<tr>
			<th scope="column">&nbsp;</th><th colspan="3" scope="column">Joi 7 , Feb 2019</th><th colspan="3" scope="column">Vineri 8 , Feb 2019</th><th colspan="3" scope="column">Sâmbătă 9 , Feb 2019</th><th colspan="3" scope="column">Duminică 10 , Feb 2019</th><th colspan="3" scope="column">Luni 11 , Feb 2019</th><th colspan="3" scope="column">Marți 12 , Feb 2019</th><th colspan="3" scope="column">Miercuri 13 , Feb 2019</th>
		</tr><tr>
			<th scope="column">&nbsp;</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th><th>1</th><th>2</th><th>3</th>
		</tr><tr>
			<th scope="row">Menu A</th><td><div class="fm-checkbox"><input id="chk0_M0_D07022019S1" type="checkbox" name="chk0_M0_D07022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk0_M0_D07022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk0_M0_D07022019S1" class="i-checks" title="CheckboxID: 0
Meniu: Menu A
Data: 07/02/2019
Schimbul: 1" /><span for="chk0_M0_D07022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk1_M0_D07022019S2" type="checkbox" name="chk1_M0_D07022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk1_M0_D07022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk1_M0_D07022019S2" class="i-checks" title="CheckboxID: 1
Meniu: Menu A
Data: 07/02/2019
Schimbul: 2" /><span for="chk1_M0_D07022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk2_M0_D07022019S3" type="checkbox" name="chk2_M0_D07022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk2_M0_D07022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk2_M0_D07022019S3" class="i-checks" title="CheckboxID: 2
Meniu: Menu A
Data: 07/02/2019
Schimbul: 3" /><span for="chk2_M0_D07022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk3_M0_D08022019S1" type="checkbox" name="chk3_M0_D08022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk3_M0_D08022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk3_M0_D08022019S1" class="i-checks" title="CheckboxID: 3
Meniu: Menu A
Data: 08/02/2019
Schimbul: 1" /><span for="chk3_M0_D08022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk4_M0_D08022019S2" type="checkbox" name="chk4_M0_D08022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk4_M0_D08022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk4_M0_D08022019S2" class="i-checks" title="CheckboxID: 4
Meniu: Menu A
Data: 08/02/2019
Schimbul: 2" /><span for="chk4_M0_D08022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk5_M0_D08022019S3" type="checkbox" name="chk5_M0_D08022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk5_M0_D08022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk5_M0_D08022019S3" class="i-checks" title="CheckboxID: 5
Meniu: Menu A
Data: 08/02/2019
Schimbul: 3" /><span for="chk5_M0_D08022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk6_M0_D09022019S1" type="checkbox" name="chk6_M0_D09022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk6_M0_D09022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk6_M0_D09022019S1" class="i-checks" title="CheckboxID: 6
Meniu: Menu A
Data: 09/02/2019
Schimbul: 1" /><span for="chk6_M0_D09022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk7_M0_D09022019S2" type="checkbox" name="chk7_M0_D09022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk7_M0_D09022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk7_M0_D09022019S2" class="i-checks" title="CheckboxID: 7
Meniu: Menu A
Data: 09/02/2019
Schimbul: 2" /><span for="chk7_M0_D09022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk8_M0_D09022019S3" type="checkbox" name="chk8_M0_D09022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk8_M0_D09022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk8_M0_D09022019S3" class="i-checks" title="CheckboxID: 8
Meniu: Menu A
Data: 09/02/2019
Schimbul: 3" /><span for="chk8_M0_D09022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk9_M0_D10022019S1" type="checkbox" name="chk9_M0_D10022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk9_M0_D10022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk9_M0_D10022019S1" class="i-checks" title="CheckboxID: 9
Meniu: Menu A
Data: 10/02/2019
Schimbul: 1" /><span for="chk9_M0_D10022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk10_M0_D10022019S2" type="checkbox" name="chk10_M0_D10022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk10_M0_D10022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk10_M0_D10022019S2" class="i-checks" title="CheckboxID: 10
Meniu: Menu A
Data: 10/02/2019
Schimbul: 2" /><span for="chk10_M0_D10022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk11_M0_D10022019S3" type="checkbox" name="chk11_M0_D10022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk11_M0_D10022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk11_M0_D10022019S3" class="i-checks" title="CheckboxID: 11
Meniu: Menu A
Data: 10/02/2019
Schimbul: 3" /><span for="chk11_M0_D10022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk12_M0_D11022019S1" type="checkbox" name="chk12_M0_D11022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk12_M0_D11022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk12_M0_D11022019S1" class="i-checks" title="CheckboxID: 12
Meniu: Menu A
Data: 11/02/2019
Schimbul: 1" /><span for="chk12_M0_D11022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk13_M0_D11022019S2" type="checkbox" name="chk13_M0_D11022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk13_M0_D11022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk13_M0_D11022019S2" class="i-checks" title="CheckboxID: 13
Meniu: Menu A
Data: 11/02/2019
Schimbul: 2" /><span for="chk13_M0_D11022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk14_M0_D11022019S3" type="checkbox" name="chk14_M0_D11022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk14_M0_D11022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk14_M0_D11022019S3" class="i-checks" title="CheckboxID: 14
Meniu: Menu A
Data: 11/02/2019
Schimbul: 3" /><span for="chk14_M0_D11022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk15_M0_D12022019S1" type="checkbox" name="chk15_M0_D12022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk15_M0_D12022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk15_M0_D12022019S1" class="i-checks" title="CheckboxID: 15
Meniu: Menu A
Data: 12/02/2019
Schimbul: 1" /><span for="chk15_M0_D12022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk16_M0_D12022019S2" type="checkbox" name="chk16_M0_D12022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk16_M0_D12022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk16_M0_D12022019S2" class="i-checks" title="CheckboxID: 16
Meniu: Menu A
Data: 12/02/2019
Schimbul: 2" /><span for="chk16_M0_D12022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk17_M0_D12022019S3" type="checkbox" name="chk17_M0_D12022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk17_M0_D12022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk17_M0_D12022019S3" class="i-checks" title="CheckboxID: 17
Meniu: Menu A
Data: 12/02/2019
Schimbul: 3" /><span for="chk17_M0_D12022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk18_M0_D13022019S1" type="checkbox" name="chk18_M0_D13022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk18_M0_D13022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk18_M0_D13022019S1" class="i-checks" title="CheckboxID: 18
Meniu: Menu A
Data: 13/02/2019
Schimbul: 1" /><span for="chk18_M0_D13022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk19_M0_D13022019S2" type="checkbox" name="chk19_M0_D13022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk19_M0_D13022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk19_M0_D13022019S2" class="i-checks" title="CheckboxID: 19
Meniu: Menu A
Data: 13/02/2019
Schimbul: 2" /><span for="chk19_M0_D13022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk20_M0_D13022019S3" type="checkbox" name="chk20_M0_D13022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk20_M0_D13022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk20_M0_D13022019S3" class="i-checks" title="CheckboxID: 20
Meniu: Menu A
Data: 13/02/2019
Schimbul: 3" /><span for="chk20_M0_D13022019S3"></span></div></td>
		</tr><tr>
			<th scope="row">Meniu B</th><td><div class="fm-checkbox"><input id="chk0_M1_D07022019S1" type="checkbox" name="chk0_M1_D07022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk0_M1_D07022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk0_M1_D07022019S1" class="i-checks" title="CheckboxID: 0
Meniu: Meniu B
Data: 07/02/2019
Schimbul: 1" /><span for="chk0_M1_D07022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk1_M1_D07022019S2" type="checkbox" name="chk1_M1_D07022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk1_M1_D07022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk1_M1_D07022019S2" class="i-checks" title="CheckboxID: 1
Meniu: Meniu B
Data: 07/02/2019
Schimbul: 2" /><span for="chk1_M1_D07022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk2_M1_D07022019S3" type="checkbox" name="chk2_M1_D07022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk2_M1_D07022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk2_M1_D07022019S3" class="i-checks" title="CheckboxID: 2
Meniu: Meniu B
Data: 07/02/2019
Schimbul: 3" /><span for="chk2_M1_D07022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk3_M1_D08022019S1" type="checkbox" name="chk3_M1_D08022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk3_M1_D08022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk3_M1_D08022019S1" class="i-checks" title="CheckboxID: 3
Meniu: Meniu B
Data: 08/02/2019
Schimbul: 1" /><span for="chk3_M1_D08022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk4_M1_D08022019S2" type="checkbox" name="chk4_M1_D08022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk4_M1_D08022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk4_M1_D08022019S2" class="i-checks" title="CheckboxID: 4
Meniu: Meniu B
Data: 08/02/2019
Schimbul: 2" /><span for="chk4_M1_D08022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk5_M1_D08022019S3" type="checkbox" name="chk5_M1_D08022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk5_M1_D08022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk5_M1_D08022019S3" class="i-checks" title="CheckboxID: 5
Meniu: Meniu B
Data: 08/02/2019
Schimbul: 3" /><span for="chk5_M1_D08022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk6_M1_D09022019S1" type="checkbox" name="chk6_M1_D09022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk6_M1_D09022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk6_M1_D09022019S1" class="i-checks" title="CheckboxID: 6
Meniu: Meniu B
Data: 09/02/2019
Schimbul: 1" /><span for="chk6_M1_D09022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk7_M1_D09022019S2" type="checkbox" name="chk7_M1_D09022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk7_M1_D09022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk7_M1_D09022019S2" class="i-checks" title="CheckboxID: 7
Meniu: Meniu B
Data: 09/02/2019
Schimbul: 2" /><span for="chk7_M1_D09022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk8_M1_D09022019S3" type="checkbox" name="chk8_M1_D09022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk8_M1_D09022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk8_M1_D09022019S3" class="i-checks" title="CheckboxID: 8
Meniu: Meniu B
Data: 09/02/2019
Schimbul: 3" /><span for="chk8_M1_D09022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk9_M1_D10022019S1" type="checkbox" name="chk9_M1_D10022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk9_M1_D10022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk9_M1_D10022019S1" class="i-checks" title="CheckboxID: 9
Meniu: Meniu B
Data: 10/02/2019
Schimbul: 1" /><span for="chk9_M1_D10022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk10_M1_D10022019S2" type="checkbox" name="chk10_M1_D10022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk10_M1_D10022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk10_M1_D10022019S2" class="i-checks" title="CheckboxID: 10
Meniu: Meniu B
Data: 10/02/2019
Schimbul: 2" /><span for="chk10_M1_D10022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk11_M1_D10022019S3" type="checkbox" name="chk11_M1_D10022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk11_M1_D10022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk11_M1_D10022019S3" class="i-checks" title="CheckboxID: 11
Meniu: Meniu B
Data: 10/02/2019
Schimbul: 3" /><span for="chk11_M1_D10022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk12_M1_D11022019S1" type="checkbox" name="chk12_M1_D11022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk12_M1_D11022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk12_M1_D11022019S1" class="i-checks" title="CheckboxID: 12
Meniu: Meniu B
Data: 11/02/2019
Schimbul: 1" /><span for="chk12_M1_D11022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk13_M1_D11022019S2" type="checkbox" name="chk13_M1_D11022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk13_M1_D11022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk13_M1_D11022019S2" class="i-checks" title="CheckboxID: 13
Meniu: Meniu B
Data: 11/02/2019
Schimbul: 2" /><span for="chk13_M1_D11022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk14_M1_D11022019S3" type="checkbox" name="chk14_M1_D11022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk14_M1_D11022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk14_M1_D11022019S3" class="i-checks" title="CheckboxID: 14
Meniu: Meniu B
Data: 11/02/2019
Schimbul: 3" /><span for="chk14_M1_D11022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk15_M1_D12022019S1" type="checkbox" name="chk15_M1_D12022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk15_M1_D12022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk15_M1_D12022019S1" class="i-checks" title="CheckboxID: 15
Meniu: Meniu B
Data: 12/02/2019
Schimbul: 1" /><span for="chk15_M1_D12022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk16_M1_D12022019S2" type="checkbox" name="chk16_M1_D12022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk16_M1_D12022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk16_M1_D12022019S2" class="i-checks" title="CheckboxID: 16
Meniu: Meniu B
Data: 12/02/2019
Schimbul: 2" /><span for="chk16_M1_D12022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk17_M1_D12022019S3" type="checkbox" name="chk17_M1_D12022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk17_M1_D12022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk17_M1_D12022019S3" class="i-checks" title="CheckboxID: 17
Meniu: Meniu B
Data: 12/02/2019
Schimbul: 3" /><span for="chk17_M1_D12022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk18_M1_D13022019S1" type="checkbox" name="chk18_M1_D13022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk18_M1_D13022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk18_M1_D13022019S1" class="i-checks" title="CheckboxID: 18
Meniu: Meniu B
Data: 13/02/2019
Schimbul: 1" /><span for="chk18_M1_D13022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk19_M1_D13022019S2" type="checkbox" name="chk19_M1_D13022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk19_M1_D13022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk19_M1_D13022019S2" class="i-checks" title="CheckboxID: 19
Meniu: Meniu B
Data: 13/02/2019
Schimbul: 2" /><span for="chk19_M1_D13022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk20_M1_D13022019S3" type="checkbox" name="chk20_M1_D13022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk20_M1_D13022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk20_M1_D13022019S3" class="i-checks" title="CheckboxID: 20
Meniu: Meniu B
Data: 13/02/2019
Schimbul: 3" /><span for="chk20_M1_D13022019S3"></span></div></td>
		</tr><tr>
			<th scope="row">Meniu V</th><td><div class="fm-checkbox"><input id="chk0_M2_D07022019S1" type="checkbox" name="chk0_M2_D07022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk0_M2_D07022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk0_M2_D07022019S1" class="i-checks" title="CheckboxID: 0
Meniu: Meniu V
Data: 07/02/2019
Schimbul: 1" /><span for="chk0_M2_D07022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk1_M2_D07022019S2" type="checkbox" name="chk1_M2_D07022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk1_M2_D07022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk1_M2_D07022019S2" class="i-checks" title="CheckboxID: 1
Meniu: Meniu V
Data: 07/02/2019
Schimbul: 2" /><span for="chk1_M2_D07022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk2_M2_D07022019S3" type="checkbox" name="chk2_M2_D07022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk2_M2_D07022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk2_M2_D07022019S3" class="i-checks" title="CheckboxID: 2
Meniu: Meniu V
Data: 07/02/2019
Schimbul: 3" /><span for="chk2_M2_D07022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk3_M2_D08022019S1" type="checkbox" name="chk3_M2_D08022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk3_M2_D08022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk3_M2_D08022019S1" class="i-checks" title="CheckboxID: 3
Meniu: Meniu V
Data: 08/02/2019
Schimbul: 1" /><span for="chk3_M2_D08022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk4_M2_D08022019S2" type="checkbox" name="chk4_M2_D08022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk4_M2_D08022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk4_M2_D08022019S2" class="i-checks" title="CheckboxID: 4
Meniu: Meniu V
Data: 08/02/2019
Schimbul: 2" /><span for="chk4_M2_D08022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk5_M2_D08022019S3" type="checkbox" name="chk5_M2_D08022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk5_M2_D08022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk5_M2_D08022019S3" class="i-checks" title="CheckboxID: 5
Meniu: Meniu V
Data: 08/02/2019
Schimbul: 3" /><span for="chk5_M2_D08022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk6_M2_D09022019S1" type="checkbox" name="chk6_M2_D09022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk6_M2_D09022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk6_M2_D09022019S1" class="i-checks" title="CheckboxID: 6
Meniu: Meniu V
Data: 09/02/2019
Schimbul: 1" /><span for="chk6_M2_D09022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk7_M2_D09022019S2" type="checkbox" name="chk7_M2_D09022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk7_M2_D09022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk7_M2_D09022019S2" class="i-checks" title="CheckboxID: 7
Meniu: Meniu V
Data: 09/02/2019
Schimbul: 2" /><span for="chk7_M2_D09022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk8_M2_D09022019S3" type="checkbox" name="chk8_M2_D09022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk8_M2_D09022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk8_M2_D09022019S3" class="i-checks" title="CheckboxID: 8
Meniu: Meniu V
Data: 09/02/2019
Schimbul: 3" /><span for="chk8_M2_D09022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk9_M2_D10022019S1" type="checkbox" name="chk9_M2_D10022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk9_M2_D10022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk9_M2_D10022019S1" class="i-checks" title="CheckboxID: 9
Meniu: Meniu V
Data: 10/02/2019
Schimbul: 1" /><span for="chk9_M2_D10022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk10_M2_D10022019S2" type="checkbox" name="chk10_M2_D10022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk10_M2_D10022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk10_M2_D10022019S2" class="i-checks" title="CheckboxID: 10
Meniu: Meniu V
Data: 10/02/2019
Schimbul: 2" /><span for="chk10_M2_D10022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk11_M2_D10022019S3" type="checkbox" name="chk11_M2_D10022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk11_M2_D10022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk11_M2_D10022019S3" class="i-checks" title="CheckboxID: 11
Meniu: Meniu V
Data: 10/02/2019
Schimbul: 3" /><span for="chk11_M2_D10022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk12_M2_D11022019S1" type="checkbox" name="chk12_M2_D11022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk12_M2_D11022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk12_M2_D11022019S1" class="i-checks" title="CheckboxID: 12
Meniu: Meniu V
Data: 11/02/2019
Schimbul: 1" /><span for="chk12_M2_D11022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk13_M2_D11022019S2" type="checkbox" name="chk13_M2_D11022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk13_M2_D11022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk13_M2_D11022019S2" class="i-checks" title="CheckboxID: 13
Meniu: Meniu V
Data: 11/02/2019
Schimbul: 2" /><span for="chk13_M2_D11022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk14_M2_D11022019S3" type="checkbox" name="chk14_M2_D11022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk14_M2_D11022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk14_M2_D11022019S3" class="i-checks" title="CheckboxID: 14
Meniu: Meniu V
Data: 11/02/2019
Schimbul: 3" /><span for="chk14_M2_D11022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk15_M2_D12022019S1" type="checkbox" name="chk15_M2_D12022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk15_M2_D12022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk15_M2_D12022019S1" class="i-checks" title="CheckboxID: 15
Meniu: Meniu V
Data: 12/02/2019
Schimbul: 1" /><span for="chk15_M2_D12022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk16_M2_D12022019S2" type="checkbox" name="chk16_M2_D12022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk16_M2_D12022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk16_M2_D12022019S2" class="i-checks" title="CheckboxID: 16
Meniu: Meniu V
Data: 12/02/2019
Schimbul: 2" /><span for="chk16_M2_D12022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk17_M2_D12022019S3" type="checkbox" name="chk17_M2_D12022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk17_M2_D12022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk17_M2_D12022019S3" class="i-checks" title="CheckboxID: 17
Meniu: Meniu V
Data: 12/02/2019
Schimbul: 3" /><span for="chk17_M2_D12022019S3"></span></div></td><td><div class="fm-checkbox"><input id="chk18_M2_D13022019S1" type="checkbox" name="chk18_M2_D13022019S1" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk18_M2_D13022019S1\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk18_M2_D13022019S1" class="i-checks" title="CheckboxID: 18
Meniu: Meniu V
Data: 13/02/2019
Schimbul: 1" /><span for="chk18_M2_D13022019S1"></span></div></td><td><div class="fm-checkbox"><input id="chk19_M2_D13022019S2" type="checkbox" name="chk19_M2_D13022019S2" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk19_M2_D13022019S2\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk19_M2_D13022019S2" class="i-checks" title="CheckboxID: 19
Meniu: Meniu V
Data: 13/02/2019
Schimbul: 2" /><span for="chk19_M2_D13022019S2"></span></div></td><td><div class="fm-checkbox"><input id="chk20_M2_D13022019S3" type="checkbox" name="chk20_M2_D13022019S3" onclick="javascript:setTimeout(&#39;__doPostBack(\&#39;chk20_M2_D13022019S3\&#39;,\&#39;\&#39;)&#39;, 0)" value="chk20_M2_D13022019S3" class="i-checks" title="CheckboxID: 20
Meniu: Meniu V
Data: 13/02/2019
Schimbul: 3" /><span for="chk20_M2_D13022019S3"></span></div></td>
		</tr>
	</table>
        <br/>
        <div class="button-icon-btn">
                <button onclick="__doPostBack('prevBtn','')" id="prevBtn" class="btn btn-warning warning-icon-notika" type="button" disabled="disabled"><i class="notika-icon notika-left-arrow"></i> Prev Week</button>&nbsp;
                <button onclick="__doPostBack('saveBtn','')" id="saveBtn" class="btn btn-teal teal-icon-notika" type="button"><i class="notika-icon notika-checked"></i> Save Selected</button>&nbsp;&nbsp;
                <button onclick="__doPostBack('resetBtn','')" id="resetBtn" class="btn btn-danger danger-icon-notika" type="button"><i class="notika-icon notika-close"></i> Reset All</button>&nbsp;
                <button id="undoBtn" class="btn btn-info info-icon-notika" type="button"><i class="notika-icon notika-refresh"></i> Undo Last</button>&nbsp;
                <button onclick="__doPostBack('nextBtn','')" id="nextBtn" class="btn btn-warning warning-icon-notika" type="button"><i class="notika-icon notika-right-arrow"></i> Next Week</button>
                <div style="float:right; padding-right:10px;">
                    <button id="adminBtn" class="btn btn-lightblue lightblue-icon-notika" type="button"><i class="notika-icon notika-settings"></i> Admin Panel</button>

                                <div class="dialog-pro dialog">
                                    <button id="logoutBtn" class="btn btn-deeporange deeporange-icon-notika" type="button"><i class="notika-icon notika-back"></i> Logout</button>
                                </div>
                </div>
        </div>
        <p id="selectedRows"></p>
<!--Csabi begin-->
   <!--[if lt IE 8]>
            <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
        <![endif]-->
    <!-- Dialog area Start-->
    <div class="dialog-area">
        <div class="container">
            <div class="row">
                <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12">
                    <div class="dialog-inner mg-t-30">
                        <div class="contact-hd dialog-hd">
                            <h2>Dialog success message!</h2>
                            <p>A beautiful replacement for Javascript's boring dialog Alert</p>
                        </div>
                        <div class="dialog-pro dialog">
                            <button onclick="__doPostBack('sasuccess','')" id="sasuccess" class="btn btn-info">Click me</button>
                        </div>
                    </div>
                </div>
                
               
                <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12">
                    <div class="dialog-inner mg-t-30">
                        <div class="contact-hd dialog-hd">
                            <h2>Dialog warning message</h2>
                            <p>A warning message, with a function attached to the "Confirm"-button...</p>
                        </div>
                        <div class="dialog-pro dialog">
                            <button class="btn btn-info" id="sawarning" type="button">Click me</button>
                        </div>
                    </div>
                </div>
            </div> 
        </div>
    </div>
    <!-- Dialog area End-->
<!--Csabi end-->
           
</div>


        <!-- End Footer area-->
    <!-- jquery
		============================================ -->
    <script src="js/vendor/jquery-1.12.4.min.js"></script>
    <!-- meanmenu JS
		============================================ -->
    <script src="js/meanmenu/jquery.meanmenu.js"></script>
    <!-- meanmenu CSS
		============================================ -->
    <link rel="stylesheet" href="css/meanmenu/meanmenu.min.css"/>
    <!-- owl.carousel JS
		============================================ -->
    <script src="js/owl.carousel.min.js"></script>
    <!-- owl.carousel CSS
		============================================ -->
    <link rel="stylesheet" href="css/owl.carousel.css"/>
    <link rel="stylesheet" href="css/owl.theme.css"/>
    <link rel="stylesheet" href="css/owl.transitions.css"/>
    <!-- price-slider JS
		============================================ -->
    <script src="js/jquery-price-slider.js"></script>
    <!-- bootstrap JS
		============================================ -->
    <script src="js/bootstrap.min.js"></script>
    <!-- wow JS
		============================================ -->
    <script src="js/wow.min.js"></script>
    <!-- scrollUp JS
		============================================ -->
    <script src="js/jquery.scrollUp.min.js"></script>
    <!-- mCustomScrollbar JS
		============================================ -->
    <script src="js/scrollbar/jquery.mCustomScrollbar.concat.min.js"></script>
    <!-- icheck JS
		============================================ -->
    <script src="js/icheck/icheck.min.js"></script>
    <script src="js/icheck/icheck-active.js"></script>
    <!--  todo JS
		============================================ -->
    <script src="js/todo/jquery.todo.js"></script>
	<!-- wave CSS
		============================================ -->
    <link rel="stylesheet" href="css/wave/waves.min.css"/>
    <link rel="stylesheet" href="css/wave/button.css"/>
	<!--  wave JS
		============================================ -->
    <script src="js/wave/waves.min.js"></script>
    <script src="js/wave/wave-active.js"></script>
    <!-- autosize JS
		============================================ -->
    <script src="js/autosize.min.js"></script>
    <!-- plugins JS
		============================================ -->
    <script src="js/plugins.js"></script>
    <!-- main JS
		============================================ -->
    <script src="js/main.js"></script>
    <!--  Chat JS
		============================================ -->
    <!-- dialog CSS & JS
		============================================ -->
    <link rel="stylesheet" href="css/dialog/sweetalert2.min.css"/>
    <link rel="stylesheet" href="css/dialog/dialog.css"/>
    <script src="js/dialog/sweetalert2.min.js"></script>
    <script src="js/dialog/dialog-active.js"></script>
    <!--  notification JS
		============================================ -->
    <script src="js/notification/bootstrap-growl.min.js"></script>
    <script src="js/notification/notification-active.js"></script>
    <!-- main CSS
		============================================ -->
    <link rel="stylesheet" href="css/main.css"/>
    <!-- style CSS
		============================================ -->
    <link rel="stylesheet" href="style.css"/>
    <!-- Bootstrap CSS
		============================================ -->
    <link rel="stylesheet" href="css/bootstrap.min.css"/>
    <!-- normalize CSS
		============================================ -->
    <link rel="stylesheet" href="css/normalize.css"/>


		<!-- istvan script
		============================================ -->
	<script>
        if (screen.width < 500) {
          $("body").addClass("nohover");
          $("td, th")
            .attr("tabindex", "1")
            // When they are tapped, focus them
            .on("touchstart", function() {
              $(this).focus();
            });
        }
	</script>
    <script>
                 function GetSelected() {
            var chected = new Array();
            $("[name='checkbox']").each(function (index, data) {
                if (data.checked) {
                    chected.push(data.value +"---"+data.nextSibling.textContent);
                }
            });
                     alert(chected);
        }
    </script>
    <style>
    .iCheck-helper {

        position: absolute;
        top: 0%;
        left: 0%;
        display: block;
        width: 100%;
        height: 100%;
        margin: 0px;
        padding: 0px;
        background: rgb(255, 255, 255) none repeat scroll 0% 0%;
        border: 0px none;
        opacity: 0;

    }
    th,td {
        text-align:center;
        border: 1px solid black;

    }
    </style>
    
<div class="aspNetHidden">

	<input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="CA0B0334" />
	<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="R6aZrd5rTvcIDsn60j6Oa5NQpiKkogQr7uqxq4+mAFEguitVM7ttIGI8ghANmo2UceSrWlnYKnJoX3uvGdqXcznGeG1sMu+z+Ttl6eDuxVESXNMPazB0I5UsiEzWpK/fPDQqPqBDdEL9TNJBgRJK1272nJ87R81qkYdw7xUiQxQOxLKYl8Yqt3rOY0yHxbiLKyeDSaelPF/jkJowFNEgrIfcpv1+T71rj6pnuYjfFU/VSxxKb+vb0k1B5efaA8WUyii5TbtbmUABnoi7hKO05HNg41ZzexuIty8iMcr1OYXcI9R6hH451YyaxXfQ0H4y2PacHX1LibO77ZMxovtIOg8huOapNUPC5FxSJyZFlhk4qiXayDueCC0KW+wal/sCzRmmuOyGgG3CUJkhvC6CMlKJGTypj9WOTshnUxlerJ3xlglqYr79akpDYlcdb3vpPstgcFzLEJWQEbHvfgrwx4st999pIIWT5DGG/1yMRPHvugNPLmlTI39CJAD8v9Z2ELnrU0hZj1sme+DaYllVWhiRWxB4PO6hw4sj6Lm8+wqPs01NlX+kfdESh9AvWQqUoodNSpJFMB1b7GZhAEyhW8465/Lr9jfhhOzumE/ZxZOJexd4R82nFRJl5o7veqqiOAM8QomnIetIy3qjcXX294EHGB0ZQrvmM80q8VWQt0Be8HM41+SB0t59hkXRi/pn/zsrjfWv8NLKWyMMEjOMAzrT+uwACbmMc7hp+34tJkyLPEMEzVIp18NpYR6UVLHg5WhW1xWEaykktpd6itZlt3ZUtkgdYpf46rsjXENRzTGIPbGpNidBXylyfjoZSLZoRj4y4fuppzwIQf1mtM4tmAcv4dTQi4viIeQ7m3CeF5/mRrS3sguRxLApMTydxQVQGgPXk+OWRP9YURh1NhN41pkWItWnbySUnTyDxHIczcgldil+qyNUl7pNBu7xi/yxSYVieBCfDT3ZHC7w/XPnHPfBgYAI4NIbz0ot1/HoYgORcIX8Ludq8U3KdfQKmNlX4WCkLuCtTwe2k9bW/IvpOkvWhhc/tIcY7DRGSqHa/hU9t/qhRWkCyCBF6Jdi1OV+XZ1fJnLtgowJ41+makaPB76j/eVJPlg5MeaoXqNOWUoCsgkC5doJARQe2PfnKZRNV4noW9auBXTwWxN+3UJzo9o7RjSCD5s/sWLc2nuhdwWkVfBPZeMscLK/Zgs1GV8TC8+jYHMUqvBm2XuiA4DIfUl18TPElFhI72pjlkV02HMj3vQHzh5YJ4pAvqPdh04a6YVciiynT9Q/eVcacZTRVoJVNWzptWBbVYlgaGrzIcEvpgTkes2himFFM43TXjBLWp8IjkdWmYDxhvd++CIACy7Ie1QSrq0VZFgkbJQ8FLCkwwoaEAOCp3xvhi7nJaMH8rsXL0t374puzZsVa2J02DWqBOA9LRME850hezDlbsgNsPWZu+wXMaw8UOWvjS2KXFW1oNepDqKOcBqwzsfdLTz46xAOe/dgjWIhpHcl/9YTBb1NHpu2IM05dKmUoG+I3irhdKj8ogA1M/HacHHxEg==" />
</div>

<script type="text/javascript">
//<![CDATA[
Sys.Application.add_init(function() {
    $create(Sys.UI._UpdateProgress, {"associatedUpdatePanelId":"UpdatePanel1","displayAfter":500,"dynamicLayout":true}, null, null, $get("updateProgress"));
});
//]]>
</script>
</form>

<!-- Visual Studio Browser Link -->
<script type="text/javascript" src="http://localhost:49989/ad6d8357b62c42a58b6abcd43ab0108b/browserLink" async="async" id="__browserLink_initializationData" data-requestId="1fea7c1cceda4fcbb8bd6113ef9776e7" data-appName="Firefox"></script>
<!-- End Browser Link -->

</body>
</html>

Open in new window

Commented:
I can't tell you anything more, since you didn't provide me the C# code, and hence, can't tell how you generated the checkboxes.
Just look at my code how the checkboxes are made and follow the same.
Molnár IstvánHelpDesk / Programmer

Author

Commented:
Hi,

It's working now.

The strange thing is, that if I add the following in update panel, the checkedchange event is not fired (I don't know why):
     <script>
                    Sys.Application.add_load(initICheck);
                </script>

Open in new window

initcheck function:
    <script>
        function initICheck() {
            $('.fm-checkbox').iCheck();
            $('.icheckbox_square-green checked').iCheck()
            $('.i-checks').iCheck();
            $('.iCheck-helper').iCheck();

            var el = $('.icheckbox');
            el.addClass('icheckbox_square-green');
            el.removeClass('.icheckbox');
            $('input').on('ifClicked', function (event) {//ifChecked
                PageMethods.iCheckedChanged(this.checked, this.id, OnSuccess, OnError);

                function OnSuccess(response) {
                    //alert(response);
                    $('#selectedRows').html(response);
                }
                function OnError(error) {
                    alert(error);
                }

            });
        }
    </script>

Open in new window

, so I created a Webmethod iCheckedChanged and now it works

Thanks very much for both of your help
Molnár IstvánHelpDesk / Programmer

Author

Commented:
thank you both

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial