C# 如何使用javascript遍历gridview的列?
我有一个在运行时动态绑定的gridview。我需要遍历客户端的gridview列。我已经将gridview的id传递给javascript函数,但是我不知道如何遍历特定的行 我从我的代码中调用javascript函数,如下所示-C# 如何使用javascript遍历gridview的列?,c#,javascript,asp.net,gridview,C#,Javascript,Asp.net,Gridview,我有一个在运行时动态绑定的gridview。我需要遍历客户端的gridview列。我已经将gridview的id传递给javascript函数,但是我不知道如何遍历特定的行 我从我的代码中调用javascript函数,如下所示- btnInsert.Attributes.Add("OnClick", "return IsValidEntry(" + gridview.ClientID + ")"); 现在,我正在捕获特定行控件的ID,并将其传递给另一个javascript函数,如下所示- fu
btnInsert.Attributes.Add("OnClick", "return IsValidEntry(" + gridview.ClientID + ")");
现在,我正在捕获特定行控件的ID,并将其传递给另一个javascript函数,如下所示-
function IsValidEntry(Status)
{
var strErr='';
if(document.getElementById(Status.id).innerHTML == "Dev in Progress")
{
strErr+='<br>* Develeopment should be completed first.';
document.getElementById('schValidation').innerHTML = strErr;
jQuery("#schValidation").show('slow');
return false;
}
}
功能IsValidEntry(状态)
{
var-strErr='';
if(document.getElementById(Status.id).innerHTML==“开发中”)
{
strErr+=“
*应首先完成开发工作。”;
document.getElementById('schValidation')。innerHTML=strErr;
jQuery(“#schValidation”).show('slow');
返回false;
}
}
这很好,但现在我需要浏览整个专栏
链接或一些示例代码将非常有用
谢谢
Akhil我建议使用jquery。为列指定一个CSS类并使用each迭代器
$(function() {
$('.className').each(function () {
// do something...
});
});
使用JQuery可以像这样遍历gridview行和列
$(document).ready(function () {
$('#GridViewID tr').each(function () {
alert($(this).find("td:eq(0)").text()); //get column1 value
alert($(this).find("td:eq(1)").text()); //get column2 value
});
});
我通过以下方式解决了这个问题:
function IsValidEntry()
{
var len = document.getElementById('ctl00_ContentPlaceHolder1_gdScheduleNew').rows.length;
var i;
for (i = 2; i <= len; i++)
{
if(document.getElementById("ctl00_ContentPlaceHolder1_gdScheduleNew_ctl0" + i + "_lblStatus").innerHTML == "Dev in Progress")
{
//Code here
}
}
}
函数IsValidEntry()
{
var len=document.getElementById('ctl00\u contentplaceholder 1\u gdScheduleNew')。rows.length;
var i;
对于(i=2;i您希望在所有行上循环还是仅在特定行上循环?对于想访问任何特定列或所有列的列也是如此?您希望检查所有列或行??您已经在主题行的列中写入了遍历,但在正文中您希望在行中遍历!这些ID不是硬编码的…i的值每次都在更改t'ctl00\u contentplaceholder 1\u gdScheduleNew'
。是的,我已经硬编码了id,因为这个id是固定的,不会改变。如果你改变服务器控件的id怎么办?如果你把它包装在另一个.NET控件中怎么办?所有这些都会导致.NET生成不同的客户端id。最好生成javascript服务器端或者使用[inline tags]()获取客户端ID。哦,你完全正确……这可能会在将来产生其他问题……我现在明白了……非常感谢