/********************************************/
//  select控件内容填写以及相互关联的js脚本  //
//  参数：
//      arrContent：内容数组
//      sels：控件ID数组
/********************************************/
function AutoSelection(aryContent, sels)
{

  var me = this;
  this.self = function(obj)  // 根据ID取得自己的对象
  {
    return document.getElementById(obj);
  }

  this.subItems = function (i, pid)  // 根据序号和名称取得下面关联的子序列
  {
    for(j=i+1;j<sels.length;j++)  // 添加根节点
    {
      if(me.self==null)
        continue;
      me.self(sels[j]).length = 0;
      me.self(sels[j]).options[0] = new Option("==请选择==", "");  // 显示文字和Value
    }
    for(j=0;j<aryContent.length;j++)
    {
      if(aryContent[j][1]==pid)
      {
        me.self(sels[i+1]).options[me.self(sels[i+1]).length] = new Option(aryContent[j][0], aryContent[j][2]);  //aryContent[j][2]
      }
    }
  }

  this.getValue = function(obj)
  {
    return me.self(obj).options.value;
  }

  this.setValue = function(obj, v)
  {
    s = me.self(obj);
    for(i=0;i<s.length;i++)
    {
      if(s.options[i].text.toLowerCase()==v.toLowerCase())
      {
        s.options[i].selected = true;
        break;
      }
    }
  }

  this.setByValue = function(obj, v)
  {
    s = me.self(obj);
    for(i=0;i<s.length;i++)
    {
      if(s.options[i].value.toLowerCase()==v.toLowerCase())
      {
        s.options[i].selected = true;
        break;
      }
    }
  }

  this.init = function()
  {
    me.subItems(-1, "root");
    for(i=0;i<sels.length;i++)
    {
      me.self(sels[i]).onchange = function()
      {
        //Bndy
        if(sels[i]=="subclass")
        {
            document.getElementById("hidMainClassName").value=document.getElementById("mainclass").options[document.getElementById("mainclass").selectedIndex].text;
        }
        //end
        var j;
        for(j=0;me.self(sels[j])!=this;j++);
        me.subItems(j, me.self(sels[j]).value);
      }
    }
  }

  this.init();
}