从javascript一致地访问gridview行数据

从javascript一致地访问gridview行数据,javascript,asp.net,vb.net,gridview,Javascript,Asp.net,Vb.net,Gridview,我有一个asp.net网页,其中包含一个gridview,其中SQL数据使用DataSourceID属性绑定到该网页。我希望能够从各种用户事件(如第二个gridview中的按钮单击和行单击)启动JavaScript,并使用JavaScript读取gv1数据并执行一些简单的操作。我的问题是,我的一些JavaScript调用在gridview中看到了数据,但很多时候我在gridview中看到的只是一个标题(没有数据行!) 例如,如果我使用 然后,我总是在初始页面加载和一些回发中看到gridview数

我有一个asp.net网页,其中包含一个gridview,其中SQL数据使用DataSourceID属性绑定到该网页。我希望能够从各种用户事件(如第二个gridview中的按钮单击和行单击)启动JavaScript,并使用JavaScript读取gv1数据并执行一些简单的操作。我的问题是,我的一些JavaScript调用在gridview中看到了数据,但很多时候我在gridview中看到的只是一个标题(没有数据行!)

例如,如果我使用

然后,我总是在初始页面加载和一些回发中看到gridview数据。然而,在其他回发中,gridview已经被剥离,我看到的只是gridview标题(行未定义)

类似地,如果我在html主体中设置对JavaScript的调用

<body id="mybody" onload="JavaScript:myJSsub();">

现在,在主体的onload()事件触发的JavaScript子脚本中,我检查所有三个的值。我总是发现1)
document.getElementById(“gv1”)
只显示gridview标题(但没有行),2)
gvar1
未定义,3)
hf1
看起来很好-所有行数据都存在。类似地,当从服务器回发页面加载启动javascript时,有时
document.getElementById(“gv1”)
会显示所有gridview数据,但有时只显示gridview标题,而不显示行数据。有人能解释一下为什么
document.getElementById(“gv1”)
不总是显示行数据吗?我想如果我理解了这一点,我就可以清楚地看到我的方法,让我的其余代码正常工作。谢谢

是否尝试将您的
RegisterStartupScript
行放入GridViews数据绑定事件?否,我不想在响应行数据绑定事件时触发任何客户端代码。我确实在databound事件中设置了gridview单元格的onclick属性,以便在稍后单击gridview单元格时可以采取操作,但我所遇到的问题似乎与此无关。无论是否单击gridview单元格,我都会遇到问题。今天我又补充了一些信息,也许可以澄清我的问题或误解到底是什么。谢谢
<body id="mybody" onload="JavaScript:myJSsub();">
    function jsPageLoadFirst() {
        // Save gv1 to a global variable
        gvar1 = document.getElementById("gv1");

        // *** Also save gv1's html to a hidden field
        document.getElementById("hf1").value = document.getElementById("gv1").innerHTML;
    }