Because I wanted to toggle checkboxes using WebMatrix I almost gave in to using javascript because it seemed the most well known option,
Yet I really did not want to use JQUERY or any javascript for the checkbox toggle function. I wanted to do everything from server side, like the ‘code behind’ of webforms. However the web pages are different in webMatrix, so I was not sure to proceed.
However i felt that in the long run, having the toggle run on the server would be better for this particular situation.
Webmatrix is the Microsoft development platform that uses razor syntax. I ultimately found the solution by slightly modifying a helper routine published by Mike Brind, Imar Spaanjaars in the book that I purchased “Beginning ASP.net web Pages with WebMatrix”. WebmMatrix has evolved but the @helper code still works. Using that original code as the basis, I came up with a slightly modified, special ‘toggle version’. Here is an example of calling the helper function.
<input type="checkbox" name="items" value="1" @Helpers.CheckedToggle("items", "1") />
And here is the checkedToggle helper which toggles the checkboxes.
@helper CheckedToggle(string option, string value) { if (HttpContext.Current.Request[option] != null) { var values = HttpContext.Current.Request[option].Split(','); if (!values.Contains(value)) { <text>checked=\"checked\"</text> } } else {<text>checked=\"checked\"</text>} }
I’m not sure if the code will fit other situations as mine but maybe it will help someone else looking for a toggle routine to handle checkboxes.