js动态生成的文本框控件怎样传递给服务端

kfwangwei2003 2007-11-20 03:12:15
我的一个客户端文件:
<%@ page contentType="text/html; charset=gb2312" %>
<html>
<head>

<script language="javascript" id="clientEventHandlersJS0">
<!--
var tLinkmanNowRowIndex
var var_rowIndex

iNowRowIndex=-1
tLinkmanNowRowIndex=-1
var_rowIndex=0

function btnAddLinkman_onclick() {
var newRow = tLinkman.insertRow();
// newRow.bgColor='#efefef';
var newCell0 = newRow.insertCell();
newCell0.className='table_body';
newCell0.width = '40';
newCell0.align = 'center';
var iRowLength = tLinkman.rows.length;
newCell0.innerText = iRowLength -1 ;
var newCell4= newRow.insertCell();
newCell4.className='table_body';
newCell4.width = '16%';
newCell4.innerHTML = "有价卡";
var newCell1 = newRow.insertCell();
newCell1.className='table_body';
newCell1.innerHTML = '<input type=text name="sell">';
var newCell2 = newRow.insertCell();
newCell2.className='table_body';
newCell2.width = '16%';
newCell2.innerHTML = '<input type=text name="shuliang1">';
var newCell3= newRow.insertCell();
newCell3.className='table_body';
newCell3.width = '16%';
newCell3.innerHTML = '<input type=text name="beizhu1">';

}

function btnDelRow_onclick(tablename) {
var itemp
itemp =-1


if ((eval(tablename + "NowRowIndex") + 1)>1)
{
itemp = eval(tablename+"NowRowIndex")
}
else
{
itemp = eval(tablename).rows.length -1
}


if (itemp >0)
{
if (confirm("确定要" + event.srcElement.value + " " + itemp +" 吗?"))
{
eval(tablename).deleteRow(itemp)
for (i=1;i<eval(tablename).rows.length;i++)
eval(tablename).rows[i].cells[0].innerText = i
}
}
// if (tableName=="tLinkman")
tLinkmanNowRowIndex = -1
}

function getRow(e)
{
event.cancellBulle=true
var itemp;
var tableName
var iNowRowIndex

itemp=-1
tableName=""
iNowRowIndex = -1
if (event.srcElement.tagName.toLowerCase() == "td")
{
iNowRowIndex = event.srcElement.parentElement.rowIndex ;
tableName = event.srcElement.parentElement.parentElement.parentElement.id.toString()
}
if (event.srcElement.tagName.toLowerCase() == "input")
{
iNowRowIndex = event.srcElement.parentElement.parentElement.rowIndex;
tableName = event.srcElement.parentElement.parentElement.parentElement.parentElement.id.toString()
// alert(tableName)
}

itemp = eval(tableName + "NowRowIndex")
if (itemp > 0)
{
eval(tableName).rows[itemp].bgColor = '#ffffff';
eval(tableName).rows[itemp].cells[0].innerText = itemp
}
if(iNowRowIndex > -1)
{
if(iNowRowIndex > 0)
{
eval(tableName).rows[iNowRowIndex].cells[0].innerHTML = '<font color=blue>►</font>'
eval(tableName).rows[iNowRowIndex].bgColor = '#efefef'
}
if (tableName=="tLinkman")
tLinkmanNowRowIndex = iNowRowIndex
}
}

function trans_row()
{
var tt_row = tLinkman.rows.length ;

document.form1.tab_row.value = tt_row;
return true ;

}
//-->
</script>

</head>
<body>
<p align="center">安阳移动营业日报表(赠送)</p>
<form name="form1" method="post" action="ceshi_submit.jsp">
<table class="table_all" id="tLinkman" cellspacing="0" cellpadding="0" width="94%" align="left" border="1">
有价卡类
<input language="javascript" id="btnAddLinkman" onclick="btnAddLinkman_onclick()" type="button" value="增加" name="btnAddLinkman">
<input name="button" type="button" id="button2" onclick="btnDelRow_onclick('tLinkman')" value="删除" language="javascript">
<tr>
<td class="table_second_title" align="left" width="124"> 序号</td>
<td class="table_second_title" align="left" width="73"> 项目</td>
<td class="table_second_title" align="left" width="50"> 类别</td>
<td class="table_second_title" align="left" width="66"> 数量</td>
<td class="table_second_title" align="left" width="68"> 备注</td>
</tr>
</table>

<input type="hidden" name="tab_row" value=0 >
<p> </p>
<p>
<input type="submit" name="Submit" value="提交" onClick="return trans_row();">
</p>
</form>
<p align="center"> </p>
<p align="left"> </p>
<p> </p>
</body>
</html>

<script language="javascript" id="clientEventHandlersJS">
<!--
tLinkman.onclick = getRow;
//-->
</script>

提交给服务端文件:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page import = "java.sql.*"%>
<%@ page import = "java.io.*"%>
<%@ page import = "java.util.*"%>
<%@ page import = "java.lang.*"%>
<%@ page import = "javax.naming.Context"%>
<%@ page import = "javax.sql.*"%>
<%@ page import = "javax.naming.InitialContext"%>
<%@ page language = "java"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body>
<%
String sel_1 = request.getParameter(sell).toString() ;
out.println("sel1:" + sel_1);
%>
</body>
</html>

运行后提示:
cannot resolve symbol
symbol : variable sell
location: class org.apache.jsp.ayyd_005fcaiwu.ceshi_005fsubmit_jsp
String sel_1 = request.getParameter(sell).toString() ;
不知道是怎么回事,好像是没有识别到sell这个控件。谢谢!
...全文
152 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
String sel_1 = request.getParameter( "sel_1 ").toString() ;
request.getParameter( "sel_1 ")本身就是String类型,lz干嘛还要toString()?
java.lang.NullPointerException 是因为sel_1这个没有这个参数。
kfwangwei2003 2007-11-20
  • 打赏
  • 举报
回复
但是如果改成:
newCell1.innerHTML = '<input type=text name="sel_"+(iRowLength-1)+>';
服务器端改成如下:
String sel_1 = request.getParameter("sel_1").toString() ;

我先测试一行时,又提示:
java.lang.NullPointerException
DarkSilence 2007-11-20
  • 打赏
  • 举报
回复
String sel_1 = request.getParameter(sell).toString() ; 这句

sell用""包裹下试试
什么是SWFUpload?   SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。 [编辑本段]SWFUpload的主要特点   * 可以同时上传多个文件;   * 类似AJAX的无刷新上传;   * 可以显示上传进度;   * 良好的浏览器兼容性;   * 兼容其他JavaScript库 (例如:jQuery, Prototype等);   * 支持Flash 8和Flash 9;   SWFUpload不同于其他基于Flash构建的上传工具,它有着优雅的代码设计,开发者可以利用XHTML、CSS和JavaScript来随心所欲的定制它在浏览器下的外观;它还提供了一组简明的JavaScript事件,借助它们开发者可以方便的在文件上传过程中更新页面内容来营造各种动态效果。   在使用SWFUpload之前,请确认你具备一定的JavaScript和DOM知识。在实际开发中,大部分的错误都是由于错误的设置和低劣的Event Handlers处理程序所造成的。 [编辑本段]文档中文翻译   http://www.v-sky.com/doc/swfupload/v2.1.0/Documentation.html [编辑本段]效果演示   * Classic Form Demo http://demo.swfupload.org/formsdemo ;   * Features Demo http://demo.swfupload.org/featuresdemo ;   * Application Demo http://demo.swfupload.org/applicationdemo ;   * v1.0.2 Plugin Demo http://demo.swfupload.org/v102demo ; [编辑本段]选择合适的Flash控件   在发行包(SWFUpload v2)中含有2个版本的Flash控件(swfupload_f8.swf 与wfupload_f9.swf),其中第一个版本拥有最佳的兼容性,但是为此损失了部分功能;而第二个版本提供了一些附加的功能但是损失了兼容性。 [编辑本段]SWFUpload的初始化与配置   首先,在页面中引用SWFUpload.js ,如      然后,初始化SWFUpload ,如   var swfu;   window.onload = function () {   swfu = new SWFUpload({   upload_url : "http://www.swfupload.org/upload.php",   flash_url : "http://www.swfupload.org/swfupload_f9.swf", file_size_limit : "20480"   });   };   以下是一个标准的SWFUpload初始化设置所需的参数,你可以根据需要自己进行删减:   {   upload_url : "http://www.swfupload.org/upload.php", 处理上传请求的服务器端脚本URL   file_post_name : "Filedata", 是POST过去的$_FILES的数组名   post_params : {   "post_param_name_1" : "post_param_value_1",   "post_param_name_2" : "post_param_value_2",   "post_param_name_n" : "post_param_value_n"   },   file_types : "*.jpg;*.gif", 允许上传的文件类型   file_types_description: "Web Image Files", 文件类型描述   file_size_limit : "1024", 上传文件体积上限,单位MB   file_upload_limit : 10, 限定用户一次性最多上传多少个文件,在上传过程中,该数字会累加,如果设置为“0”,则表示没有限制   file_queue_limit : 2, 上传队列数量限制,该项通常不需设置,会根据file_upload_limit自动赋值   fl

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧