<body onload="Test()"><input type="hidden" id="idAll" runat="server" value=''><input type="button" Class="bsbttn" value="保存" name="cmdTest" Onclick="getCheck()"><script language="javascript">
<!--
////////////////////////////////////////////////////////function Test()
{ //var idStr='18,19,20,36,38,228,300,314';
 var idStr=Form1.idAll.value;
 //alert(idStr);
 if (idStr!='')
{
 var idArray=new Array();
 var i=0,j=0;  while( i!=-1)
 {
i=idStr.indexOf(',');
if(i!=-1)
idArray[j]=idStr.substr(0,i);
else
idArray[j]=idStr.substr(0);
//alert(idArray[j]);
idStr=idStr.substr(i+1);
j=j+1;
  }
 //alert(j); //递归形式
 changeNode(TreeView1,idArray);
}
}
function changeNode(sss,m_array)
{
var NodeArray=new Array();NodeArray=sss.getChildren();
for(var i=0;i<NodeArray.length;i++) {
   cNode=NodeArray[i];   var m_i;
   for(m_i=0;m_i<m_array.length;m_i++)
   { 
     
     if(cNode.getAttribute("ID")==m_array[m_i])
   {
        cNode.setAttribute('Checked',true);
}
 
    }  if (cNode.getChildren().length>0)
changeNode(cNode,m_array);
   
 }
}///////////////////////////////////////////////////////////////////////
//全局变量,保存选中的nodeid值,如 12,25,36,
var str_check='';
//取出checkbox的值
function getCheck()
{ //递归形式
 getNode(TreeView1);
 //取值保存到input里面,服务器端取值.
 //alert(str_check);
 Form1.idAll.value=str_check;
 Form1.submit();
}function getNode(m_treeNodes)
{
var NodeArray=new Array();NodeArray=m_treeNodes.getChildren();
for(var i=0;i<NodeArray.length;i++) {
   cNode=NodeArray[i];
    // alert(cNode.getAttribute("Checked"));
     if(cNode.getAttribute("Checked")==true)
   {
   //alert('true');
        str_check=str_check+cNode.getAttribute("ID")+',';
//alert(str_check);
}
 
     if (cNode.getChildren().length>0)
getNode(cNode);
   
 }
}--> 
</SCRIPT>----------------------------------------------------------
    Protected WithEvents idAll As System.Web.UI.HtmlControls.HtmlInputHiddenIf Not Page.IsPostBack Then
 idAll.Value=""Else
            ''从客户端取值,提交选中的nodeid值
            Dim m_IDs As String = idAll.Value
            ...
end if