nodeID 是个串"00"
onclick=div_viewOnclick( nodeID ,this)既
onclick=div_viewOnclick( 00,this)
onclick=div_viewOnclick( "00",this)这个一调用就变成
<script>
div_viewOnclick( 0,this)
{}
</script>
或者说有什么函数ff(00)=00       f("00")="00"
而不时被自动转成了
f(00)=0

解决方案 »

  1.   

    好像
    var s="00"
    s.tostring(10)好像可以,但是很多时候报错。。说不支持这个方法
    AXGTree.xg_TreeArray[i].nodeParentID.toString(10)
      

  2.   

    nodeID="00"
    onclick=div_viewOnclick( nodeID ,this)
    就可以了啊!!!
    除非在你的函数div_viewOnclick里面
    对nodeID 的操作是按照数字来进行的。
      

  3.   

          function   div_viewOnclick(ANodeID,AImg)
          {   
              with(xgTree){   
              if   (0==xg_GetNodeCount(xgTree,ANodeID))   return;   
            
              var   tmpNode=xg_TreeSearch(xgTree,ANodeID);   
              for   (var   i=0;i<xg_TreeArray.length;i++){   
                  if   (ANodeID==xg_TreeArray[i].nodeParentID){   
                      if   (0==tmpNode.nodeIsView)   
                          eval(xg_TreeArray[i].nodeDivID+".style.display='inline';");   
                      else   
                           eval(xg_TreeArray[i].nodeDivID+".style.display='none';");   
                      }   
                  }   
                  if   (0==tmpNode.nodeIsView){   
                      tmpNode.nodeIsView=1;   
                      AImg.src='OUTMINUS.BMP';   
                  }  
                  else
                  {   
                      tmpNode.nodeIsView=0;   
                      AImg.src='OUTPLUS.BMP';   
                  }   
             }   
          }   函数如上,
    这里用了ANodeID==xg_TreeArray[i].nodeParentID
    难道是由xg_TreeArray[i].nodeParentID决定的使用类型?
    但是xg_TreeArray[i].nodeParentID定义为      function   xg_TreeNode(ANodeID,ANodeInnerHtml,ANodeParentID,ANodeDivID){   
              this.nodeID=ANodeID;   
              this.nodeInnerHtml=ANodeInnerHtml;   
      this.nodeParentID=ANodeParentID;   
      this.nodeDivID=ANodeDivID;   
      //--   if   0   not   view   the   children   else   if   1   view   the   children   
      this.nodeIsView=0;   
          }   
    ------this.nodeParentID=ANodeParentID;这一句,这里也没指定类型。。
    参数传递的时候,调用参数的类型转换规则如何?
    或者说强行保留参数类型,不被作转换?“00”还是“00”不是0
      

  4.   

    默认情况传进的字符不会自己转变成数字的
    除非你函数中进行了数字运算你是不是在后台直接输出的nodeID 是的话就要在外面加上 '<%=nodeID  %> ' 强制传进去的是个string
      

  5.   

    to:KK3K2005
    1。默认情况传进的字符不会自己转变成数字的
    除非你函数中进行了数字运算ANodeID==xg_TreeArray[i].nodeParentID只做了判断。
    问题是nodeParentID的类型也没定义为了怕出现数字,我把其他xg_TreeArray[i]的所有值
    都带上引号。。
    问题好像依旧
    2。你是不是在后台直接输出的nodeID 是的话就要在外面加上 '<%=nodeID %> ' 强制传进去的是个string
    我试验下把
    tmpOut+="width='32'   height='16'   onclick='div_viewOnclick( "+nodeID+",this)'  style='color:blue;cursor:hand;'>&nbsp;";       
    改为
    tmpOut+="width='32'   height='16'   onclick='div_viewOnclick( '"+nodeID+"',this)'  style='color:blue;cursor:hand;'>&nbsp;";   
    试验中。。
      

  6.   

    解决了,谢谢大家
    onclick='div_viewOnclick( \""+nodeID+"\",this)
    带个双引号强制作为字符串传递