Это просто. Все, что я хочу сделать, это вставить скрытый столбец в asp: Griview, который я смогу получить через javascript. Любые указатели?Вставьте скрытый столбец в asp: GridView, но все еще доступная сторона клиента
ответ
Вы можете скрыть столбец, установив его свойство 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>
Добавить к нему свойство CSS display:none
. Это будет невидимо, но все еще присутствует в разметке.
Однако это небезопасно, так как клиент может разблокировать этот столбец, используя такие инструменты, как FireBug, который позволяет переопределять свойства.
Не волнуйтесь Theres ничего безопасного здесь. Итак, где я могу применить этот стиль? Элемент шаблона? Это была моя первоначальная реакция, но я не мог заставить ее вступить в силу. –
Item
ItemStyle-CssClass="hidden"
CSS класс
.hidden{ display: none; }
Это то, что я сделал. Я создал скрытое поле внутри TemplateField
в .aspx
страницы
<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
Все ответы были правильными, но я дал тик на это, так как он был более полно ответил. –