【问题标题】:Obout Grid Asp.Net disable text column on addingObout Grid Asp.Net 在添加时禁用文本列
【发布时间】:2015-04-21 03:11:44
【问题描述】:

我有一个来自 obout 的网格:

<cc1:Grid ID="GridEvalEmp" runat="server" AllowPageSizeSelection="False" AllowPaging="True" PageSize="10"
                                AutoGenerateColumns="False" FolderStyle="styles/style_8" Language="es"
                                Width="600" AllowFiltering="false">
                                 <ClientSideEvents OnClientCallbackError="onGridErrorEval" OnClientAdd="onAddEvalEmp" OnClientEdit="onEditEvalEmp"
                                           OnBeforeClientInsert="validarFechas" OnBeforeClientUpdate="validarFechas"/>
                            <Columns>
                                <cc1:Column ID="ClmCodEval" DataField="codEvaluacion" HeaderText="Capacitación" Visible="false" Index="0" />
                                <cc1:Column ID="ClmNombreCapacitacion" Width="300" HeaderText="Capacitación" DataField="nombreEvaluacion" Index="1" Visible="true" Wrap="True" />
                                <cc1:Column ID="ClmFechaActEval" Width="180" HeaderText="Fecha de Evaluación" DataFormatString="{0:dd/MM/yyyy}" DataField="fechaEvaluacion" Index="2" Visible="true" Wrap="True" />
                                <cc1:Column ID="ClmPuntaje" Width="200"  HeaderText="Puntaje" DataField="puntajeEval" Index="3" Visible="true" Wrap="True" />
                                <cc1:Column ID="ClmEditCap" Width="160" AllowDelete="false" AllowEdit="true" HeaderText="" Index="3" />
                            </Columns>                             
                        </cc1:Grid>                           

我想在客户端添加时禁用 ClmPuntaje 列。 为此,我有一个 javascript 函数,但它不起作用:

function onAddEvalEmp(record) {
            document.getElementById('ClmPuntaje').disabled = true;
        }

我怎样才能做到这一点?

谢谢! 萨布丽娜

【问题讨论】:

    标签: javascript asp.net obout


    【解决方案1】:

    实际上,当您尝试查看页面的源代码时,ID 不是“ClmPuntaje”。 你可能会得到真正的 ID,然后 javascript 就可以工作了。 通过 jquery 禁用整个列很简单,

    <cc1:Column ID="ClmEditCap" Width="160" AllowDelete="false" AllowEdit="true" HeaderText="" CssClass="Class1" Index="3" />
    

    然后,尝试: $(".Class1")" 来识别你想要禁用的元素。

    【讨论】:

    • 感谢您的回答,但这些列中不接受 CssClass="Class1"。它说它不是一个有效的属性。你知道实现这一目标的另一种方法吗?
    • gridview 机制提供了这种行为,根本不需要任何脚本。现在由您来选择最适合的方式。
    【解决方案2】:

    关于gridview(非标准gridview)

    添加行时指定模板(obout site):

    <obout:Grid id="grid1" runat="server" RowEditTemplateId="tplRowEdit">
        <Templates>
            <obout:GridTemplate ID="tplRowEdit">
                <Template> 
                    ...
                </Template>
            </obout:GridTemplate>
        </Templates>
    </obout:Grid>
    

    【讨论】:

      【解决方案3】:

      您可以使用 obout 客户端 Api:

      GridEvalEmp.hideColumn("ClmPuntaje");

      在此处查看示例:http://www.obout.com/grid/grid_columns_show_hide_columns.aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-02-08
        • 2011-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多