Header Checbox不检查componentArt网格中的所有复选框 [英] Header Checbox Not checking all the chekboxes in componentArt Grid

查看:83
本文介绍了Header Checbox不检查componentArt网格中的所有复选框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请注意-这是与零部件艺术网格有关的问题.

这段代码中的问题是,当我选中标题"复选框时,它将选中
标题复选框不选中行中的复选框.
我希望当用户选中标题复选框时,它将选中所有其他复选框..


我已经在ComponentArt Grid的标题中添加了复选框,就像这样....

note-This is the Problem Related to Component Art Grid.

the Problem in this code is that when i check the Header Check box it Will check
Header check box to not check the checkboxes in rows.
i want that when user check header check box it will check all other chechboxs..


i have Added check box in Header of ComponentArt Grid like this....

<ComponentArt:GridColumn HeadingText="" ColumnType="CheckBox" AllowEditing="True" AllowSorting="False"
                                         DataType="System.Boolean" HeadingCellClientTemplateId="CheckboxHeadingCellTemplate"
                                           DataCellClientTemplateId ="SelectorTemplate"/>







<ComponentArt:ClientTemplate ID="CheckboxHeadingCellTemplate">
                         <input type="checkbox" onclick="headerCheck(JobResponses, 0, this.checked)" ## headerChecked ? 'checked':'' ## />
                       </ComponentArt:ClientTemplate>




并在DataCellClientTemplateId中添加了复选框,如...




and also added check box in DataCellClientTemplateId like ...

<ComponentArt:ClientTemplate ID="CheckboxHeadingCellTemplate">
                         <input type="checkbox" onclick="headerCheck(JobResponses, 0, this.checked)" ## headerChecked ? 'checked':'' ## />
                       </ComponentArt:ClientTemplate>




这是用于检查标题复选框和所有其他内容的JavaScript方法..




here is javascript method to check header check box and all other..

var headerChecked = false;
       function headerCheck(grid, column, wasChecked) {
           debugger;
           var gridItem;
           var itemIndex = 0;
           headerChecked = wasChecked;

           grid.beginUpdate();
           while (gridItem = grid.get_table().getRow(itemIndex)) {
               gridItem.SetValue(column, wasChecked, true); // set dontPersist to true to improve performance

               var email = gridItem.get_cells()[7].get_value() + ";";
               var itemid = "" + itemIndex+ "";
               var row = grid.getItemFromClientId(itemid);
               if (wasChecked == false) {
                   document.getElementById('<%=hdnJobEmail.ClientID %>').value = "";
               }
               else {
                   document.getElementById('<%=hdnJobEmail.ClientID %>').value += row.getMember("Email").Value + ";";
               }
               itemIndex++;
           }
           alert(document.getElementById('<%=hdnJobEmail.ClientID %>').value);
           grid.endUpdate();
       }


this  javascript method will check individual check box..


       function ToggleCheckbox(objCheckbox, itemID, e) {
           debugger;
           var row = JobResponses.getItemFromClientId(itemID);

           if (objCheckbox.checked) {
               JobResponses.select(row, true);
               //var abc = row.get_cells()[7].get_value();
               document.getElementById('<%=hdnJobEmail.ClientID %>').value += row.getMember("Email").Value + ";";
           }
           else {
               var abc = "";
               JobResponses.unSelect(row);
               var values = document.getElementById('<%=hdnJobEmail.ClientID %>').value.split(";");
               document.getElementById('<%=hdnJobEmail.ClientID %>').value = "";
               if (values.length > 0) {
                   for (var i = 0; i < values.length - 1; i++) {
                       if (values[i] == row.getMember("Email").Value) {

                       }
                       else {
                           var abc = row.getMember("Email").Value;
                           document.getElementById('<%=hdnJobEmail.ClientID %>').value += values[i] + ";";
                       }
                   }
               }
           }
           e.cancelBubble = true;
           if (e.stopPropagation) e.stopPropagation();
           return false;
       }

推荐答案

您将其发布到CA论坛了吗?在那寻求帮助?

我只是认为,在各自的论坛上发布有关第三方控制的此类问题会更​​有用.
此处:组件艺术论坛 [组件艺术文档 [ ^ ]
组件艺术知识库 [ ^ ]
Did you post it in CA forum? Looked for help there?

I just think, posting such issues about a 3rd party control would be more useful at their respective forums.
Here:Component Art Forum[^]

Try looking here:
Component Art documentation[^]
Component Art knowledgebase[^]


here is solution......

  <ComponentArt:ClientTemplate ID="SelectorTemplate">
                        <input type="checkbox"  ## if(DataItem.getCurrentMember().get_value() == true) "checked"; else "unchecked"  ## onclick="javascript:ToggleCheckbox(this, '## DataItem.ClientId ##', event);" />
                    </ComponentArt:ClientTemplate>


这篇关于Header Checbox不检查componentArt网格中的所有复选框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆