问题描述
- 怎么在js中获取gridview某一行的值并且赋给一个数组
-
如题;
在网上找了这样一种方法,总是调不出来,各位大神给看看
首先在模板列中添加一个按钮用来选中行,页面有关代码如下:25 26 <Columns> 27 <asp:TemplateField> 28 <ItemTemplate> 29 <input id="btnLocation" type="button" value="定位到" onclick="Select()" style="height: 20px" /> 30 </ItemTemplate> 31 </asp:TemplateField> 32 </Columns> 33 34 脚本代码如下: 35 36 //取得gridview中获取选中行指定列的值 37 function Select() 38 { 39 //获取鼠标点击的元素 40 var e=event.srcElement; 41 //获取元素所在的行的行号(表头行号从0开始)。注意:parentElement只适用于IE浏览器,而parentNode则符合DOM标准。 42 //var rowIndex=e.parentElement.parentElement.rowIndex ; 43 var rowIndex=e.parentNode.parentNode.rowIndex ; 44 //获取GridView控件 45 var gdview=document.getElementById("<%=gdview.ClientID %>"); 46 //分别获取选定行标注点的X、Y坐标 47 var value=gdview.rows(rowIndex).cells(列号).innerText; 48 49 }
解决方案
你的代码只能在ie10-下跑,事件对象不是这样获取的。传递当前对象到Select方法里面
<columns>
<asp:templatefield>
<itemtemplate>
<input id="btnLocation" type="button" value="定位到" onclick="Select(this)" style="height: 20px" />
</itemtemplate>
</asp:templatefield>
</columns>
<script language="javascript"> //取得gridview中获取选中行指定列的值
function Select(btn) {
var rowIndex = btn.parentNode.parentNode.rowIndex;
var gdview = document.getElementById("<%=gdview.ClientID %>");
var value = gdview.rows[rowIndex].cells["要取列的下标,从0开始"].innerHTML;
}
</script>
解决方案二:
js获取gridview的值
js获取gridview的值
时间: 2025-01-20 19:36:39