在 asp:GridView 中插入隐藏列,但客户端仍然可用

发布于 2024-09-26 07:30:41 字数 72 浏览 2 评论 0原文

这很简单。我想做的就是将一个隐藏列插入到 asp:Griview 中,我将能够通过 javascript 访问该列。有什么指点吗?

This is simple. All I want to do is insert a hidden column into an asp:Griview that I'll be able to access through javascript. Any pointers?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

千鲤 2024-10-03 07:30:41

您可以通过设置其 CssClass 属性来隐藏列,例如:

<style>
.hidden {display:none;}
</style>

...

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="Id" ItemStyle-CssClass="hidden"
            HeaderStyle-CssClass="hidden" />
        <asp:BoundField DataField="Title" />
    </Columns>
</asp:GridView>

You can hide a column by setting its CssClass property, e.g:

<style>
.hidden {display:none;}
</style>

...

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="Id" ItemStyle-CssClass="hidden"
            HeaderStyle-CssClass="hidden" />
        <asp:BoundField DataField="Title" />
    </Columns>
</asp:GridView>
小猫一只 2024-10-03 07:30:41

项目属性

ItemStyle-CssClass="hidden"

CSS类

.hidden{ display: none; }

Item attribute

ItemStyle-CssClass="hidden"

css class

.hidden{ display: none; }
荭秂 2024-10-03 07:30:41

这就是我所做的。我在 .aspx 页面的 TemplateField 内创建了一个隐藏字段

<asp:TemplateField>
  <ItemTemplate>
    <asp:HiddenField ID="ITEM_VAL" runat="server" Value='<%# Bind("ITEM_VAL") %>' />
  </ItemTemplate>
</asp:TemplateField>

然后在代码隐藏文件中 -

protected Sub gvHist_RowDataBound()
  Dim val as Integer
  Dim hiddenCol As HiddenField = e.Row.FindControl("ITEM_VAL")
  val = Convert.ToInt32(hiddenCol.Value)
End Sub

This is what I did. I created a hidden field inside a TemplateField in the .aspx page

<asp:TemplateField>
  <ItemTemplate>
    <asp:HiddenField ID="ITEM_VAL" runat="server" Value='<%# Bind("ITEM_VAL") %>' />
  </ItemTemplate>
</asp:TemplateField>

Then in the code behind file -

protected Sub gvHist_RowDataBound()
  Dim val as Integer
  Dim hiddenCol As HiddenField = e.Row.FindControl("ITEM_VAL")
  val = Convert.ToInt32(hiddenCol.Value)
End Sub
路弥 2024-10-03 07:30:41

添加 CSS 属性 display:none。它将不可见,但仍然存在于标记中。

然而,这并不安全,因为客户可能会使用 FireBug 等允许覆盖属性的工具来解锁此列。

Add to it the CSS property display:none. It will be unvisible but still present in the markup.

However this is not secure as the customer might unlock this column by using tools like FireBug which allows to override properties.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文