我有个页面,有很多textbox,有些我要拿来做判断不为空,但id都已经固定,没什么规律。有什么办法不用一个一个判断吗?

解决方案 »

  1.   

    不知道你是用什么语言在做,但是很显然  基本上服务器控件做成网页最后输出的 html标签你看我这个例子能不能满足你的需求
    <html>
    <head>
    <script>
    function IsNulls(){
    var isnull = false;
    var ipt = document.getElementsByTagName("input");
    for(var i=0;i<ipt.length;i++){
    //判断是是否是textbox 
    if(ipt[i].type=="text"&&ipt[i].value=="") {
    isnull = true;
    break;
    }
    }
    if(isnull)alert("null");else alert(" not null");}
    </script></head>
    <body>
    <input id="asd" type="text"/>
    <input id="v12" type="text"/>
    <input id="as3d" type="text"/>
    <input id="d412" type="text"/>
    <input id="s12" type="text"/>
    <hr/>
    这是测试用的按钮没事件触发<input type="button"  value=""/>
    <hr/>
    <input  type="button" value="check null" onclick="IsNulls();">
    </body>
    <html>
      

  2.   

    谢谢ls的,但是按照你的方法会把页面上所有textbox都判断一遍,我只是想对其中一些做判断,可不可以改进下。
    就是我在我想判断的textbox上加种属性,然后根据获取同种属性的控件来,就像你根据getElementsByTagName("input")类似,加种属性的话应该就不会影响原来的程序。
    或者是不是还有一种方式是可以获取在某个区间内的所有同类控件,以上只是构思,希望各位不吝赐教
      

  3.   

    放在同一个div中,使用同一个id或者class试试,我觉得应该可以
      

  4.   

    是用C#的,ls的各位可不可以跟详细点
    放在同一个div中,使用同一个id或者class试试,这个能否举个简单例子
      

  5.   

    改进版<html>
    <head>
    <script>
    function IsNulls(){
    var isnull = false;
    var ipt = document.getElementsByTagName("input");
    for(var i=0;i<ipt.length;i++){
    //判断是是否是textbox 
    if(ipt[i].type=="text"&&ipt[i].check=="true"&&ipt[i].value=="") {
    isnull = true;
    break;
    }
    }
    if(isnull)alert("null");else alert(" not null");}
    </script></head>
    <body>
    <input id="asd" type="text" check="true"/>
    <input id="v12" type="text" check="true"/>
    <input id="as3d" type="text" check="true"/>
    <input id="d412" type="text"/>
    <input id="s12" type="text"/>
    </div>
    <hr/>
    这是测试用的按钮没事件触发<input type="button"  value=""/>
    <hr/>
    <input  type="button" value="check null" onclick="IsNulls();">
    </body>
    <html>
    如果是c#  中的话,也可以这样 
            <asp:TextBox ID="TextBox1" runat="server" check="false"></asp:TextBox>
    但是会有警告
      

  6.   


    <html>
    <head>
    <script>
    function IsNulls(){
        var isnull = false;
        var ipt = document.getElementsByTagName("input");
        for(var i=0;i<ipt.length;i++){
            //判断是是否是textbox 
            if(ipt[i].type=="text"&&ipt[i].check=="true"&&ipt[i].value=="") {
                isnull = true;
                break;
            }
        }
        if(isnull)alert("null");else alert(" not null");}
    </script></head>
    <body>
        <input id="asd" type="text" check="true"/>
        <input id="v12" type="text" check="true"/>
        <input id="as3d" type="text" check="true"/>
        <input id="d412" type="text"/>
        <input id="s12" type="text"/>
        </div>
        <hr/>
        这是测试用的按钮没事件触发<input type="button"  value=""/>
        <hr/>
        <input  type="button" value="check null" onclick="IsNulls();">
    </body>
    <html>支持这个方法
      

  7.   

    呵呵,我也刚刚用,不知道。
    tylwzq12344321 <asp:TextBox ID="TextBox1" runat="server" check="false"></asp:TextBox>
    这个好像没check这属性吧