We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Dialog template not sending checkbox values to controller

Thread ID:

Created:

Updated:

Platform:

Replies:

130201 Apr 27,2017 09:42 AM UTC Apr 28,2017 11:49 AM UTC ASP.NET MVC 1
loading
Tags: Grid
Paul Muir
Asked On April 27, 2017 09:42 AM UTC

My checkbox values for 'Administrator' and 'GroupAdmin' are not being posted up the controller?

Any idea what I'm doing wrong?


I have a grid defined as

@(Html.EJ().Grid<object>("UserListing")
            .Datasource(ds => ds.URL("Users/DataSource").UpdateURL("Users/Update").InsertURL("Users/Insert").RemoveURL("Users/Delete").Adaptor(AdaptorType.UrlAdaptor))
            .AllowGrouping()
            .GroupSettings(group => { group.EnableDropAreaAutoSizing(false); })
            .AllowFiltering()
            .FilterSettings(filter => { filter.FilterType(FilterType.Excel); })
            .EditSettings(edit =>
            {
                edit.AllowAdding()
                .AllowDeleting()
                .AllowEditing().EditMode(EditMode.DialogTemplate).DialogEditorTemplateID("#CreateUserDiv");
            })
            
        .ToolbarSettings(toolbar =>
        {
            toolbar.ShowToolbar().ToolbarItems(items =>
            {
                items.AddTool(ToolBarItems.Add);
                items.AddTool(ToolBarItems.Edit);
                items.AddTool(ToolBarItems.Delete);
                items.AddTool(ToolBarItems.Update);
                items.AddTool(ToolBarItems.Cancel);
            });
        })
        .Columns(col =>

        {

            col.Field("UserID").HeaderText("ID").IsPrimaryKey(true).TextAlign(TextAlign.Right).Width(50).AllowGrouping(false).Add();

            col.Field("Username").HeaderText("User Name").Width(50).AllowGrouping(false).EditType(EditingType.String).Add();

            col.Field("DisplayName").HeaderText("Name").Width(100).AllowGrouping(false).EditType(EditingType.String).Add();

            col.Field("JobTitle").HeaderText("Job Title").Width(100).EditType(EditingType.String).Add();

            col.Field("Email").HeaderText("Email").Width(100).EditType(EditingType.String).Add();

            col.Field("Department").HeaderText("Department").Width(100).Add();

            col.Field("Administrator").Visible(false).EditType(EditingType.Boolean).Add();
            col.Field("GroupAdmin").Visible(false).EditType(EditingType.Boolean).Add();

            col.HeaderText("").Template("<a rel='nofollow' href='/Users/Users/Edit/{{:UserId}}'><i class='glyphicon glyphicon-pencil'></i></a>").AllowFiltering(false).Width(20).Add();
        })
        .ClientSideEvents(eve => eve.ActionBegin("begin"))

)


and a template for inserting and editing defined as


<script type="text/template" id="CreateUserDiv">
    <b>New Staff</b>
    <table cellspacing="10">
        <tr>
            <td style="text-align: right;">
                Username
            </td>
            <td style="text-align: left">
                <input id="Username" name="Username" value="{{: Username}}" class="e-field e-ejinputtext valid"
                       style="text-align: right; width: 150px; height: 28px" />
                <br />
                <a rel='nofollow' href="#" id="checkUser">check user</a>
            </td>
        </tr>
        <tr>
            <td style="text-align: right;">
                Email
            </td>
            <td style="text-align: left">
                <input id="Email" name="Email" value="{{: Email}}" class=" e- e-field e-ejinputtext valid"
                       style="text-align: right; width: 200px; height: 28px" />
            </td>
            <td style="text-align: right;">
                Name
            </td>
            <td style="text-align: left">
                <input id="DisplayName" name="DisplayName" value="{{: DisplayName}}" class="e-field e-ejinputtext valid"
                       style="width: 150px; height: 28px" />
            </td>
        </tr>
        <tr>
            <td style="text-align: right;">
                Job Title
            </td>
            <td style="text-align: left">
                <input type="text" id="JobTitle" name="JobTitle" value="{{:JobTitle}}" style="text-align: right;" />
            </td>

            <td style="text-align: right;">
                Roles
            </td>
            <td style="text-align: left">

                    {{if Administrator}}
                    <input type="checkbox" id="Administrator" name="Administrator" checked="checked" class="e-field e-checkbox valid" style="width:30px" />
                    {{else}}
                    <input type="checkbox" id="Administrator" name="Administrator" class="e-field e-checkbox valid" style="width:30px" />
                    {{/if}}

                    {{if GroupAdmin}}
                    <input type="checkbox" id="GroupAdmin" name="GroupAdmin" checked="checked" class="e-field e-checkbox valid" style="width:30px" />
                    {{else}}
                    <input type="checkbox" id="GroupAdmin" name="GroupAdmin" class="e-field e-checkbox valid" style="width:30px" />
                    {{/if}}
           
               
            </td>
        </tr>
    </table>

</script>

which posts to controller method

        [HttpPost]
        public ActionResult Update([Bind(Include = "RolesSubmitted")]UserPartial value, FormCollection form)
        {
            return null;
        }




Venkatesh Ayothi Raman [Syncfusion]
Replied On April 28, 2017 11:49 AM UTC

Hi Paul, 
Thanks for contacting Syncfusion support. 
We went through your code example and we have tried to replicate the issue at our end. But we were unable to reproduce the reported issue and we have created a sample for your convenience which can be download from following link, 

In this sample, we have rendered the Grid with dialog editing template as well as rendered the checkbox column which is replicate your code example. Server side data is sends correctly and we attached the screenshot for Post and server side action method. Please refer to the following screenshots, 
Screenshot 1:”Developer window” 
 
Screenshot 1:”Server side action method” 
 
Code example
@(Html.EJ().Grid<object>("FlatGrid") 
            .Datasource(ds => ds.URL("Data").UpdateURL("/Grid/Update").InsertURL("/Grid/Insert").RemoveURL("/Grid/Delete").Adaptor(AdaptorType.UrlAdaptor)) 
           . . . 
 
                      .EditSettings(edit => { edit.AllowAdding().AllowDeleting().AllowEditing().EditMode(EditMode.DialogTemplate).DialogEditorTemplateID("#template"); }) 
              . . . 
                      .Columns(col => 
        { 
                . . . 
            col.Field("Verified").Visible(false).EditType(EditingType.Boolean).HeaderText("Verified").Width(90).Add(); 
        })) 
 
<script type="text/template" id="template"> 
    <b>Order Details</b> 
    <table cellspacing="10"> 
               . . .   
            <td style="text-align: right;"> 
                Verified 
            </td> 
            <td style="text-align: left"> 
              {{if Verified}} 
                <input type="checkbox" id="Verified" name="Verified" checked="checked" class="e-field e-checkbox valid" style="width:30px" /> 
                {{else}} 
                <input type="checkbox" id="Verified" name="Verified" class="e-field e-checkbox valid" style="width:30px" /> 
                {{/if}} 
                
            </td> 
        </tr> 
         
    </table> 
</script> 

Regards, 
Venkatesh Ayothiraman. 


CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

;