0

実行時に動的にバインドされるグリッドビューがあります。クライアント側でグリッドビューの列をトラバースする必要があります。gridview の ID を JavaScript 関数に渡しましたが、特定の行をトラバースする方法がわかりません。

コードビハインドからJavaScript関数を次のように呼び出しています-

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;
        }
    }

これは正常に機能していますが、この列全体をトラバースする必要があります。

リンクまたはいくつかのサンプル コードは非常に役立ちます。

ありがとう

アキル

4

3 に答える 3

0

私はそれを解決しました-

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
            }
      }
}
于 2012-08-07T08:52:44.697 に答える
0

jquery を使用することをお勧めします。列に CSS クラスを指定し、 each イテレータを使用します。

    $(function() {
        $('.className').each(function () {
            // do something...
        });
    });
于 2012-08-07T07:46:34.917 に答える
0

JQuery を使用すると、次のようにグリッドビューの行と列をトラバースできます

$(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
            });
        });
于 2012-08-07T07:56:37.420 に答える