jqGrid получает «th» и «thead», используя jQuery
Как я могу получить theader
на jqGrid с помощью jQuery?
- Прокрутка jQuery В нижней части страницы
- Ответ JQuery JSON всегда запускает ParseError
- Как переключить таблицу стилей CSS с помощью jQuery?
- Лучший способ использовать размещенный jQuery Google, но вернуться к моей размещенной библиотеке при сбое Google
- от jquery $ .ajax до углового $ http
- jQuery scrollRight?
- Анализ JSON из данных успеха JQuery.ajax
- Обработка ошибок ASP.NET MVC Ajax
Мой короткий ответ: вместо выбора элементов DOM, которые соответствуют
элементам, которые вы ищете, вы должны использовать
$("#list")[0].grid.headers
Он возвращает массив этих элементов DOM, соответствует
. Далее следует длинное описание моего ответа.
Я понимаю причину вашего вопроса. Если вы, например, определили базовую часть jqGrid как
то $("#list")
дает вам
только с «данными» частью сетки без заголовков . Основная часть данных «данных» будет помещена внутри некоторых div. Другие элементы jqGrid будут помещены в div как таблицы. Структура jqGrid (не полная) будет выглядеть следующим образом:
div.ui-jqgrid#gbox_list div.ui-jqgrid-view#gview_list div.ui-jqgrid-titlebar - caption div.ui-userdata#t_list - optional top toolbar div.ui-jqgrid-toppager#list_toppager - optional top pager div.ui-jqgrid-hdiv - all grid headers div.ui-jqgrid-hbox - (div.ui-jqgrid-hbox-rtl) if direction:"rtl" table.ui-jqgrid-htable thead tr.ui-jqgrid-labels - row with column headers (labels) th#list_rn - optional column header with row numbers th#list_Col1 - column header for the column name:"Col1" ... th#list_level - optional column header for some other special columns in case of usage TreeGrid the hidden columns of TreeGrid are: level, parent, isLeaf, expanded, loaded, icon tr.ui-search-toolbar - row for toolbar searching th th ... div.frozen-div.ui-jqgrid-hdiv - optional frozen headers table.ui-jqgrid-htable - table with frozen columns headers only ... div.ui-jqgrid-bdiv - div with the main grid data div table#list - table with the main grid data div.frozen-bdiv.ui-jqgrid-bdiv - optional div with the main grid data div table#list_frozen - table with the main grid data div.ui-userdata#tb_list - optional bottom toolbar div.ui-jqgrid-resize-mark#rs_mlist div.ui-jqgrid-pager#pager - the div with the pager
(здесь в таблице я использовал rownumbers: true
, поэтому есть th#list_rn
, первый столбец имеет имя «Col1», поэтому есть th#list_Col1
и т. д.),
Вы можете видеть, что таблица заголовков table.ui-jqgrid-htable
может иметь два дочерних table.ui-jqgrid-htable
: один tr.ui-jqgrid-labels
для заголовков столбцов и один tr.ui-search-toolbar
для filterToolbar
.
Мое предложение для вас не использует эту относительно сложную иерархию, но используйте другой короткий скрытый способ, существующий в jqGrid. Код
var gridDom = $("#list")[0];
получите элемент DOM элемента таблицы. Этот элемент имеет некоторое важное расширение, которое создается jqGrid. Это gridDom.p
которые содержат все параметры jqGrid. Другим важным расширением является gridDom.grid
с важными свойствами bDiv
, cDiv
, hDiv
, fbDiv
, fhDiv
, uDiv
а также fhDiv
, uDiv
footers
, topDiv
и headers
. Я предлагаю вам использовать gridDom.grid.headers
массив как лучший способ получить список
элементов из заголовков столбцов сетки (из правильной строки
).
Если thead
и th
существует в DOM, его можно выбрать. У вас есть пример того, что вы пытаетесь сделать?
Пытаться:
jQuery("thead", "#mygrid")