日期:2014-05-17  浏览次数:20954 次

如何获取复选框的值
我在页面上有书和笔两个复选框和一个查询按钮 我想实现的是我勾上书这个复选框的时候点击查询按钮的时候 查询出来的是关于书的数据 同样勾笔时 查询出来的是笔的信息 该怎么实现呢?我在勾复选框的时候 怎么把它的值传到后台的SQL语句 以便查询是根据我所勾的来进行查询呢? 寻求帮助

------解决方案--------------------
复选框提供一个制造单一选择开关的方法;它包括一个小框和一个标签。典型的复选框有一个小的“X”(或者它设置的其它类型)或是空的,这依靠项目是否被选择来决定的。
  我们会使用构建器正常地创建一个复选框,使用它的标签来充当它的自变量。如果我们在创建复选框后想读出或改变它,我们能够获取和设置它的状态,同样也能获取和设置它的标签。注意,复选框的大写是与其它的控制相矛盾的。
  无论何时一个复选框都可以设置和清除一个事件指令,我们可以捕捉同样的方法做一个按钮。在下面的例子里使用一个文字区域枚举所有被选中的复选框:
  //: CheckBox1.java
  // Using check boxes
  import java.awt.*;
  import java.applet.*;
  public class CheckBox1 extends Applet {
  TextArea t = new TextArea(6, 20);
  Checkbox cb1 = new Checkbox("Check Box 1");
  Checkbox cb2 = new Checkbox("Check Box 2");
  Checkbox cb3 = new Checkbox("Check Box 3");
  public void init() {
  add(t); add(cb1); add(cb2); add(cb3);
  }
  public boolean action (Event evt, Object arg) {
  if(evt.target.equals(cb1))
  trace("1", cb1.getState());
  else if(evt.target.equals(cb2))
  trace("2", cb2.getState());
  else if(evt.target.equals(cb3))
  trace("3", cb3.getState());
  else
  return super.action(evt, arg);
  return true;
  }
  void trace(String b, boolean state) {
  if(state)
  t.appendText("Box " + b + " Set\n");
  else
  t.appendText("Box " + b + " Cleared\n");
  }
  } ///:~
  trace()方法将选中的复选框名和当前状态用appendText()发送到文字区域中去,所以我们看到一个累积的被选中的复选框和它们的状态的列表。

而针对楼主的问题,只要把获取的复选框的值,直接加入到String类型的sql语句中即可
------解决方案--------------------
页面在建立复选框的时候有一个value属性设置这个值,然后在你点击查询的时候传到后台的servlet的值就是这个value的值,request.getParamter("复选框的名字");然后就得到了你选择的到底是那个value了,也就确定了你到底选择的是那个复选框了,然后在后台判断这个取得的value值,将其传入sql中就OK了!!!!
------解决方案--------------------
你是指在jsp页面上吗?既然是二选一为什么要用复选框呀,不用单选框?
<input type="radio" name="radio" value="1"/>1
<input type="radio" name="radio" value="2"/>2
后台request.getParameter("radio");就能得到你相应的选择
------解决方案--------------------
JScript code

<script type="text/javascript">

function modifyUser() {
        var count = 0;
        var j = 0;
        for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
            if (document.getElementsByName("selectFlag")[i].checked) {
                j = i;
                count++;
            }
        
                 if (count == 1) {
            window.self.location = "usermaint.do?userId=" + 
                         document.getElementsByName("selectFlag")[j].value;
        }
}
</script>