onchange="OnMenu(this.value,this.form,'City1')"

解决方案 »

  1.   

    this.form 不行
    问题是:
    <script language="javascript">
    function Onmenu(id,Myform,City)
    {
    document.Myform,city.length = 0;
    }
    </script>document.Myform.city.length = 0; 中的Myform不能被识别为变量中的值而调用Form
      

  2.   

    Bug 还真不少,还有javascript 是分大小写的OnMenu<>Onmenu还有document.Myform,city.length = 0;  //Myfrom后面加逗号干吗还有传一个字符串OnMenu(this.value,'form1','City1')"  --》 'City1'document.Myform.city这是什么意思
      

  3.   

    <form name=form1>
    <select name="Province" style="color:#FF0000" onchange="OnMenu(this.form.Province,this.form)" ID="Select1">
    <option value=p1>p1</option>
    <option value=p2>p2</option>
    </select>
    </form>
    <script language="javascript">
    function OnMenu(City,Myform)
    {
    City.length = 0;
    City.value = "";
    alert(Myfrom);
    }
    </script>
      

  4.   

    document.Myform.city的意思是假如:OnMenu(this.value,'form1','City1') 传过来的值是 this.value,form1 这个和City1是固定的值在Document.Myform.city中  Myform能自已识别为 传递过来的Form1值,并对为Form1的表进行操作
      

  5.   

    既然你想传字符串,那你就用eval好了 
    function Onmenu(id,Myform,City)
    {
     eval("document."+Myform+"."+city+".length = 0;");
    }
      

  6.   

    eval('document.'+Myform+'.'+MyCity+'.options[document.'+Myform+'.'+MyCity+'.length]') = new Option(CityItm[i][1],CityItm[i][1]);
    这句还是错误,晕~~
      

  7.   

    好了,加错地方了,呵呵
    eval('document.'+Myform+'.'+MyCity+'.options[document.'+Myform+'.'+MyCity+'.length] = new Option(CityItm[i][1],CityItm[i][1]);')谢谢
      

  8.   

    有那么麻烦吗?
    var city = document.forms[Myform].elements[MyCity];
    city.options.add(new Option(CityItm[i][1],CityItm[i][1]));