代码之家  ›  专栏  ›  技术社区  ›  nolabel

经典ASP复选框问题

  •  1
  • nolabel  · 技术社区  · 15 年前

    我理解,如果所有输入都被作为a、b和c输入,并且所有复选框都被选中,那么输出将如下所示。

    response.write(请求表(“a1”))=a、b、c
    response.write(request.form(“chk”))=1、1、1

    如果没有选中所有复选框,是否可以确定是否选中相应的输入文本复选框?
    即:输入为A、B和C,然后只选中“C”处对应的复选框。

    其输出将是:

    response.write(请求表(“a1”))=a、b、c
    response.write(request.form(“chk”))=1

    <form name="myForm">
    <input type="text" name="a1" />
    <input type="checkbox" name="chk" value="1" />
    
    <input type="text" name="a1" />
    <input type="checkbox" name="chk" value="1" />
    
    <input type="text" name="a1" />
    <input type="checkbox" name="chk" value="1" />
    
    <input type"submit" value="submit" />
    </form>
    
    2 回复  |  直到 15 年前
        1
  •  9
  •   Paul Degnan    15 年前

    您需要更改输入的名称。唯一希望多个实例共享一个名称的输入类型是一个单选按钮。这样,您就可以获得单选按钮设计用于的互斥选择行为。

    在这种情况下,您将希望为每个文本和复选框输入不同的名称。所以您的HTML应该是:

    <form name="myForm">
    <input type="text" name="a1" />
    <input type="checkbox" name="chk1" value="1" />
    
    <input type="text" name="a2" />
    <input type="checkbox" name="chk2" value="1" />
    
    <input type="text" name="a3" />
    <input type="checkbox" name="chk3" value="1" />
    
    <input type"submit" value="submit" />
    </form>
    

    然后简单地引用第三个复选框:

    response.write( request.form("chk3") ) 
    

    如果您希望结果显示在一个很好的逗号分隔列表中(如您所示),则需要编写一些代码,但我认为这是适当的。

        2
  •  0
  •   mike nelson    15 年前

    如果需要类似于“a,b,c”的逗号分隔字符串,可以更改 价值观 在所有复选框中选择“1”、“2”、“3”而不是“1”。