我正在创建一个程序,首先,用一个由用户设置的数字,它在屏幕上创建一周中几天的数组,带有一个复选框。([]是一个复选框)。
示例:
如果用户选择了数字2,则会出现2行:
第一周:星期一[X]星期二[X]星期三[X]星期四[]自由日[]星期六[]星期日[]。
第2周:星期一[]星期二[X]星期三[X]星期四[X]免费日[]星期六[]星期日[]
然后,在第二页,我想显示用户有点击到的日子。大概是这样的:
在第1周选择的日子:星期一、星期二、星期三。
第二周选定的日子:星期二、星期三、星期四。
但是...用这段代码,我得到了这样的东西,我不想要它…:
周:1-星期一-
周:2-星期二-
周:3-周三-
周:4-星期二-
周:5-周三-
周:6-星期四-
我该怎么解决呢?
谢谢你!
if(request.getParameter("number")!=null)
{
String number;
int number2;
number=request.getParameter("number");
number2=Integer.parseInt(number);
out.println("<form action='ex2c.jsp' method='get'>");
String[] dias = {"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
for (int i=0; i<number2; i++)
{
out.print("<br>");
out.println("Week: "+i+1+" - " );
for(int j=0; j<7; j++)
{
out.println("<input type='checkbox' name='check' value='"+dias[j]+"'>"+dias[j]+"</input>");
}
}
out.println("<br><br><input type='submit' name='ok'/></form>");
}
if(request.getParameter("ok")!=null)
{
// String num=request.getParameter("number");
// String [] number;
String [] number = request.getParameterValues("check");
out.println(number.length);
out.println("<br />");
for (int i=0;i<number.length;i++)
{
out.println("<br><br>Week: "+i+1+" - " );
out.println(number[i]+"--");
for(int j=0; j<2; j++)
{
//out.println(number[j]+"--") ;
}
}
}
您将以相同的形式发送周的所有天数,而不区分周,您将所有天数放入输入
中,name=“check”
并以string[]number=request.getParameterValues(“check”);
的形式接收。
问题是,您发送第1周
的星期一、星期二、星期三
和第2周
的星期二、星期三、星期四
是因为您正在创建:
<form action='ex2c.jsp' method='get'>
<input type='checkbox' name='check' value='Monday'>Monday</input>
<input type='checkbox' name='check' value='Tuesday'>Tuesday</input>
...
<input type='checkbox' name='check' value='Sunday'>Sunday</input>
<input type='checkbox' name='check' value='Monday'>Monday</input>
<input type='checkbox' name='check' value='Tuesday'>Tuesday</input>
...
<input type='checkbox' name='check' value='Sunday'>Sunday</input>
<input type='submit' name='ok'/>
</form>
因此,当您提交此表单时,通过此代码string[]number=request.getParameterValues(“check”);
您得到的是:[“monday”,“tesday”,“mesday”,“tesday”,“tesday”,“tesday”,“tesday”,“tesday”]
。
如果您想在第二个JSP
中显示用户在第一个JSP
中检查的天数,您必须找到一种方法对特定周中的天数进行分组,并将此信息发送到服务器,以便它们能够区分不同的天数。
您可以尝试使用number
参数将_number
添加到您的姓名输入中,并将此number
与表单
一起发送,以根据您的代码检查打印的周数:
第一个JSP:
if(request.getParameter("number")!=null)
{
String number;
int number2;
number=request.getParameter("number");
number2=Integer.parseInt(number);
out.println("<form action='ex2c.jsp' method='get'>");
// ADDS THE INPUT WITH WEEKS
out.println("<input type='text' name='weeks' value='" + number + "'>");
String[] dias = {"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
for (int i=1; i<=number2; i++)
{
out.print("<br>");
out.println("Week: "+ i + " - " );
for(int j=0; j<7; j++)
{
// ADD THE WEEK NUMBER IN THE NAME
out.println("<input type='checkbox' name='check_" + i + "' value='"+dias[j]+"'>"+dias[j]+"</input>");
}
}
out.println("<br><br><input type='submit' name='ok'/></form>");
}
这样,您就生成了如下内容:
<form action='ex2c.jsp' method='get'>
<input type='text' name='weeks' value='2'>
<input type='checkbox' name='check_1' value='Monday'>Monday</input>
<input type='checkbox' name='check_1' value='Tuesday'>Tuesday</input>
...
<input type='checkbox' name='check_1' value='Sunday'>Sunday</input>
<input type='checkbox' name='check_2' value='Monday'>Monday</input>
<input type='checkbox' name='check_2' value='Tuesday'>Tuesday</input>
...
<input type='checkbox' name='check_2' value='Sunday'>Sunday</input>
<input type='submit' name='ok'/>
</form>
然后您的第二个JSP:
if(request.getParameter("ok")!=null)
{
int weeks =Integer.parseInt(request.getParameter("weeks"));
for(int i=1;i<=weeks;i++){
out.println("<br><br>Week: "+ i +" - " );
String [] days = request.getParameterValues("check_"+i);
for(int j=0;i<days.length;j++)
{
out.println(days[j] + " ");
}
out.println("<br />");
}
}
我不尝试这个代码,但我认为这个想法是可行的。此外,我想评论一下,您呈现JSP
的方式在我看来非常奇怪。
希望这有帮助,
问题内容: 我正在尝试创建一个显示带有复选框的简单表单的servlet,当用户选择所需数量的复选框并单击“确认”我的servlet中的POST请求时,将检查哪些复选框已选中并基于数据库查询数据库。 。 我不确定如何在Java中执行此操作,因为用户可以选择1个或多个复选框。如果有人可以用一个小的例子来解释这一点,那将是很好的。 我是编程的新手,如果我知道怎么做的话,会提供代码片段。 问题答案: 这实
问题内容: 我有以下代码,通过检查球员的裤子大小复选框,尝试对阵列中的球员进行过滤。 我知道我在转发器中有数据数组,然后在数据数组元素(两个不同的div)之外的元素中过滤输入,这可能是导致断开连接的原因吗?因为当我将复选框添加到Repeater元素时我注意到,所以当我单击复选框时,确实会得到某种形式的反馈数组。 绑定搜索输入框非常容易实现,但是我花了太多时间获取这个简单的复选框来过滤数据。 因此,
在这里,表的id是从删除按钮传递的。但我无法从数据库和表中删除该记录。代码如下:
我在尝试反转数组时遇到麻烦,它一直在打印这条消息,您可以帮助找出我做错了什么吗? 如果输入为: 则输出为:
问题内容: 我目前正在使用一个必须能够选中/取消选中复选框的系统。每当它更改状态时,我都需要进行jquery并调用ajax来更新页面。 我的问题是-我该怎么做,以便更新? 提前致谢。 问题答案: 例如,您可以这样做: 首先,您必须查看该复选框是否已选中: 您可以通过Ajax加载特定的内容:
问题内容: 我在这里查找了一些示例,但是其中许多示例要么太高级以至于无法掌握PHP,要么它们的示例过于针对自己的项目。我目前正在努力处理PHP表单的非常基本的部分。 我正在尝试创建一个带有几个复选框的表单,每个复选框分配一个不同的值,我希望将这些复选框发送到一个变量(数组?),以便以后可以回显/使用,在我的情况下,我将在其中发送已检查的值一封电邮。 到目前为止,我已经尝试了一些变体,但是最接近的是