我有一个.jqGrid
,其中存在一个使用值创建的隐藏复选框列。要在UI上显示复选框,请使用multiselect: true
。所以基本上,我有一套<tr>
,其中一个<td>
是隐藏的,有一定的价值。 我想要在显示<td>
时显示隐藏的<td>
的值。根据.jqGrid中的第一个复选框选择读取第二个复选框值
在这种JSFiddle链接,我想获得2nd
复选框(这是"NDVoYzZ1aUNYdzAlM2Q1"
)的值,并将其时用户点击1st
推到一个数组。如果用户选择1st
和3rd
,则阵列的值应为2nd and 4th
复选框。
我该怎么做?
HTML摘录:
<tr role="row" id="0" tabindex="-1" class="ui-widget-content jqgrow ui-row-ltr ui-state-highlight" aria-selected="true">
<td role="gridcell" style="text-align:center;width: 20px;" aria-describedby="grid_cb">
<input role="checkbox" type="checkbox" id="jqg_grid_0" class="cbox" name="jqg_grid_0"> 1st
</td>
<!-- HIDDEN TD -->
<td role="gridcell" style="text-align:center;display:none;" title="" aria-describedby="grid_check">
<input type="checkbox" value="NDVoYzZ1aUNYdzAlM2Q1" name="Restaurants" id="Restaurants"> 2nd
</td>
</tr>
</br>
<tr role="row" id="1" tabindex="-1" class="ui-widget-content jqgrow ui-row-ltr">
<td role="gridcell" style="text-align:center;" aria-describedby="grid_cb">
<input role="checkbox" type="checkbox" id="jqg_grid_1" class="cbox" name="jqg_grid_1"> 3rd
</td>
<!-- HIDDEN TD -->
<td role="gridcell" style="text-align:center;display:none;" title="" aria-describedby="grid_check">
<input type="checkbox" value="QjBENlRFMW83SVElM2Q1" name="Restaurants" id="Restaurants"> 4th
</td>
</tr>
.js文件片段:
var res = [];
$('input[type=checkbox]:checked')
.each(function() {
res.push($(this).eq(1).val());
});
if (res.length == 0) {
alert('You should select at least one option.');
return;
}
alert("Values: " + res);
你的问题配制仅基于HTML片段。很难理解你想要实现什么。你想在加载数据的时候“预先选择”一些jqGrid行吗?你可以使用哪些**版本的jqGrid(可以使用)以及从哪个** fork **的jqGrid([免费jqGrid](https://github.com/free-jqgrid/jqGrid),商业版)[Guriddo jqGrid JS ](http://guriddo.net/?page_id=103334)或版本<= 4.7中的旧jqGrid)?哪个'datatype'有网格?使用JavaScript数据(jqGrid的“数据”)处理DOM的速度要快得多(像hdden单元的隐藏chackboxs的“值”)。 – Oleg
对不起,我感到困惑。我不想“预先选择”。我想要隐藏的'td'值在服务器端传递它。 'dataType'是'json'和'jqGrid'版本是'4.4.0(旧的)'。 'onSelectRow'和'onSelectAll'用于保存用户选择的值。 – CSharper
首先,jqGrid 4.4.0更像5年前的版本,并且已经过去多年。严格推荐升级jqGrid。秒,目前还不清楚像“ 2nd'这样的奇怪信息是如何进入隐藏列的。您的HTML片段包含“id”重复项(请参阅两列中的id =“餐厅”)。你使用*自定义格式化程序*还是从服务器获取这样的数据?你可以发布一个** JavaScript代码**创建网格的例子吗?一般来说,您可以使用'getCell'或'getRowData'方法来获取数据 – Oleg