JSP:javascript 实现输入多行动态输入

javascript|js|动态

  一般,我们用
request.getParameter("value");
来获得静态HTML输入的值.然后不要忘记判断是否为空,是否含有特殊字符等.

还可以用
Enumeration paramNames=request.getParameterNames();
while(paramNames.hasMoreElements()){String paramName=(String)paramNames.nextElement();}
来收集<input type="text" name="name"/>中的name

但是我们每增加新的一行,参数名同上一行一样,那么,我们将如何获得value的值?
这里我又去看书(servlet 和 JSP 核心编程,极好的一本书,该讲的都讲了,读明白了它servlet/JSP也就可以说精通了)p70页里面:getParameterValues()返回字符串数组,然后我们用循环判断这个字符串数组的长度,再就是获得值了:)

request.getParameter("value");//这个最熟悉,获得文本框的值
(Enumeration)request.getParameterNames();//获得文本框的名字
(String[])request.getParameterValues(paramName);//获得静态html页相同的参数(多次出现)的值

*************html 页 javascript 代码:
<script language="javascript">
function tbladdrow()
{
var i=lines.rows.length;
var row = Table1.insertRow(Table1.rows.length);
var col = row.insertCell(0);
col.innerHTML = "<INPUT id=line["+i+"][name1] name=line"+i+"name1 SIZE=10>";
col = row.insertCell(1);
col.innerHTML = "<INPUT id=line["+i+"][name2] name=line"+i+"name2 SIZE=10>";
col = row.insertCell(2);
col.innerHTML = "<INPUT id=line["+i+"][name3] name=line"+i+"name3 SIZE=10>";
col = row.insertCell(3);
col.innerHTML = "<INPUT id=line["+i+"][name4] name=line"+i+"name4 SIZE=10>";
}
function tbladdrows(items)
{
for( i = 1 ; i <= items ; i++)
{
tbladdrow();
}
}
function delrow()
{
if(lines.rows.length==0)
{
return false ;
}
lines.deleteRow();
}

</script>

****************html页其它代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Big5">
<title>輸入</title>
</head>
<body>
<form action="getInput.jsp">
<DIV align=center><FONT size=2>輸入測試</FONT></DIV></TD>
<TD width=412 bgColor=#e4e4e4>
<TABLE id=Table1 cellSpacing=0 borderColorDark=#ffffff cellPadding=0
width=350 align=center borderColorLight=#000000 border=1>
<TBODY>
<TR bgColor=#999999>
<TH width=94><FONT size=2>參數一</FONT></TH>
<TH width=84><FONT size=2>參數二</FONT></TH>
<TH width=85><FONT size=2>參數三</FONT></TH>
<TH width=77><FONT size=2>參數四</FONT></TH></TR>
<TBODY id=lines name="lines"><!--
<TR>
<TD><INPUT id="things_name" TYPE="text" NAME="things_name" SIZE="15"></TD>
<TD><INPUT id="things_model" TYPE="text" NAME="things_model" SIZE="10"></TD>
<TD><INPUT id="things_number" TYPE="text" NAME="things_number" SIZE="5"></TD>
<TD><input id="things_unit" type="text" name="things_unit" size="5"></TD>
</TR>
--></TBODY></TABLE>
<DIV align=center><BR></DIV>
<DIV align=center>
<INPUT id=items type=hidden value=1 name=items> <INPUT onclick=tbladdrow(items.value);

type=button value=新增一行 name=insert/>
<font color="#e4e4e4"> </font>
<INPUT language=javascript type=button value=刪除一行 name=del/>
</DIV></TD></TR></TBODY></TABLE>
<input type="submit" value="commit"/>
</form>
</body>
</html>

***jsp页收集输入
<%@ page contentType="text/html;charset=Big5"%>
<%@ page import="java.util.*"%>

<%
request.setCharacterEncoding("big5");

Enumeration paramNames=request.getParameterNames();
String paramName=null;
while(paramNames.hasMoreElements()){
paramName=(String)paramNames.nextElement();

String param=request.getParameter(paramName);

//out.println(paramName+"  "+param+"<br>");

String paramValues[]=request.getParameterValues(paramName);
for(int i=0; i<=paramValues.length-1; i++)
{
out.println(paramName+" ");
out.println(paramValues[i]+"<br>");}

}

//out.println("<br>"+name);

%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Big5">
<title>接受輸入</title>
</head>
<body>
</body>
</html>

时间: 2024-11-10 05:39:26

JSP:javascript 实现输入多行动态输入的相关文章

asp+jsp+JavaScript动态实现添加数据行_应用技巧

在应用程序的开发中,有些输入信息是动态的,比如我们要注册一个员工的工作经历,比如下图 如果做成死的,只能填写三个,如果是四个呢?或者更多呢,那不是添加不上去了吗,所以这样固然不好,我们可以用动态添加表格行实现,如下图,添加一行,输入一行信息,这样比较灵活 下面我们就来看看如何在asp和asp.net中结合javascript来实现这种效果: 首先,动态添加表格是要在前台实现的,当然后台也可以,不过可能要用到ajax,很麻烦,所以最好采用javascript来实现,下面来介绍动态添加表格行的两种方

asp+jsp+JavaScript动态实现添加数据行

在应用程序的开发中,有些输入信息是动态的,比如我们要注册一个员工的工作经历,比如下图 如果做成死的,只能填写三个,如果是四个呢?或者更多呢,那不是添加不上去了吗,所以这样固然不好,我们可以用动态添加表格行实现,如下图,添加一行,输入一行信息,这样比较灵活 下面我们就来看看如何在asp和asp.net中结合javascript来实现这种效果: 首先,动态添加表格是要在前台实现的,当然后台也可以,不过可能要用到ajax,很麻烦,所以最好采用javascript来实现,下面来介绍动态添加表格行的两种方

JavaScript如何获得从java程序输入的动态数据

问题描述 JavaScript如何获得从java程序输入的动态数据 JavaScript如何获得从java程序输入的动态数据.具体的格式怎么写 解决方案 在java程序中把数据保存到session里传到前台的jsp页面,然后在前台的jsp页面里用js就可以取出了 session.setAttribute("AttName",Object); 保存 session.getAttribute("AttName") 取出 解决方案二: 动态数据报表

jsp如何实现两个输入框,输入一个另一个自动填充第一个的内容。

问题描述 jsp如何实现两个输入框,输入一个另一个自动填充第一个的内容. 如题,我的jsp页面中 有2个输入框 我要在第一个框a 上传一个图片,a框里有了图片的名称带后缀名的. 如何实现第二个框b b的框里自动填上了 第一个框a的值不带后缀名的. 如 我a上传图片名为 asdf.jpg b框里就显示为 asdf. 本页面有 js 解决方案 先写两个input表单,然后在第一个表单里加个事件,比如onblur 焦点离开触发事件,然后这个事件触发函数,里面用js或者jquery写 把这个input的

如何控制JSP页面上的文本框只能输入数字

问题描述 如何控制JSP页面上的文本框只能输入数字,或只能输入字母,或只能输入特定字符,谢谢 问题补充:可是我们公司的自定义标签没有onbeforepaste事件suziwen 写道 解决方案 <html><body><script type="text/javascript">function noNumbers(e){var keynumvar keycharvar numcheckif(window.event) // IE{keynum =

代码-在命令行下输入*程序为什么不能正确识别

问题描述 在命令行下输入*程序为什么不能正确识别 代码的功能:函数接受3个参数两个数字一个四则运算符,输出计算结果,列如输入3 + 5 输出3+5=15:函数加减除都能运算,为何输入* ( 乘)时程序不能正确识别,求各位大神解答: 代码如下 ![主函数!(http://img.ask.csdn.net/upload/201504/01/1427890049_29127.png)` ` ` 解决方案 是不是多输入了一个空格? 解决方案二: 关键在于你输入是怎么接收方式,从截图也就能看出来乘法和其他

使用.INI文件为输入界面创建“动态帮助”

创建|动态 在c#编程中,某些情况下我们可能还会用到.INI文件.例如为一个输入界面创建"动态帮助": 我们在输入界面下方设置一个标签,当用户将光标移动到每一个TextBox或其他输入,选择框时,标签文字自动变换为该输入项的一些帮助信息. INI文件是文本文件,由若干节(section)组成,在每个带括号的标题下面,是若干个关键词(key)及其对应的值(Value) [Section] Key=Value 我们的INI文件比较简单,文件名为:HelpInfo.ini.---------

如何在一个单元格中输入多行数据

有时,我们经常需要在一个Excel单元格中输入多行数据.您可不要以为这个问题很简单,其实,当我们准备在单元格中换行时,只要按下回车键Excel便肯定转到下一个单元格了.那么如何做才能在同一个单元格中输入多行数据呢?笔者这里就给大家介绍两个小技巧. [注] 本文所述技巧已于Excel 2003下测试通过 方法一. 临时设置法 如果我们只是临时需要在一个单元格中输入多行数据,那么就可以在输入完单元格内容的第一行后,按住Alt键再打回车,这时,继续输入的字符便自动出现在了当前单元格的下方了. 方法二.

dos命令行怎么输入中文?

  dos命令行怎么输入中文的教程: reg add "HKEY_CURRENT_USERConsole" /v "LoadConIme" /d 1 /t REG_DWORD /f 首先检查 system32 文件夹下 conime.exe 文件存不存在,如果不存在,就到别的电脑去复制一个过来,然后关掉所有的控制台窗口,在"开始"->"运行"中输入如下内容并执行: reg add "HKEY_CURRENT_U