说明:根据用户不同的选择来决定把那个表单show出来(有18个不同的表单)1 load()  缺点:和我用的插件有冲突 只能放弃 优点:按需调用 页面体积小 响应速度会快点 条理也清晰点2 hide() 缺点:所有表单集中在一个页面 页面体积臃肿 加载速度会相对慢点 优点:似乎没有求:有没有更好的解决方法 谢谢!

解决方案 »

  1.   

    单纯的js就可以实现,不一定要用jq,或者extjs
      

  2.   

    <title>无标题文档</title>
    <SCRIPT type="text/javascript">
    function ss(){
     var a=document.forms.length;
     for(var i=0;i<a;i++){
      document.forms[i].style.display="none";
     }
     document.forms[this.selectedIndex].style.display="block";
    }
    function init(){
    document.getElementById("test").onchange=ss;
    }
    </script>
    </head><body onload="init()">
    <form style="display:none">
    <input type="button" value="f1">
    </form>
    <form style="display:none">
    <input type="button" value="f2">
    </form>
    <select id="test">
    <option>1</option>
    <option>2</option>
    </select>
    </body>
    这样试试
      

  3.   

    这种方法和siblings()不是一样的?所有表单都加载在页面上 然后根据用户的传值把相对应的form给show出来 只是把18个表单都预先家在进去不如动态的加载某个form来的简单吧?而且这样搞页面的体积也大点
      

  4.   

    那就不知道了  document.write?
      

  5.   

    如果楼主对JS有一定的掌握,能看懂JS代码,就不会是问题。之所以有问题,就是只依赖于现成的插件,自己不会写甚至连改都不会改。这样当然很容易遇到新问题就麻爪。这就是很简单的一种AJAX应用,在本版块之前就有不少帖子问过,都回答过。查下旧的问题就看到了。
      

  6.   

    <input type="button" value="small" id="change" onclick="turn()">
    <table border="1" align="center" width="60%" id="table">  function turn(){

    var b = document.getElementById("change");
    var t = document.getElementById("table");
    if(b.value == "small"){
    t.style.display = "none";
    b.value == "big";
    }
    else{
    t.style.display = "block";
    b.value == "small";
    }
    }这是让一个表单消失,同时也出现的方法,用这个,你就可以改成自己的,让一个表单消失,另一个出现的方法,也就是你想要的方法,希望能帮到你