动态添加数据,批量提交保存
2010-06-22 11:33
393 查看
<html>
<head><title>动态添加数据,批量提交保存</title></head>
<script type="text/javascript">
//增加数据
function addData(){
var tableObj=document.getElementById("addTab");
var newRowObj=tableObj.insertRow(tableObj.rows.length);
var loadModeName=newRowObj.insertCell(newRowObj.cells.length);
var loadModePrice=newRowObj.insertCell(newRowObj.cells.length);
var del=newRowObj.insertCell(newRowObj.cells.length);
loadModeName.innerHTML='<input name="workTeamCode" readonly maxlength="2"/>'
loadModePrice.innerHTML='<input name="workTeamName" readonly="readonly" maxlength="5" onblur="lostblur(this)"/>'
del.innerHTML='<input type="button" align="center" name="update" value="修改" onclick="updateRow()">'
var arrObj=document.all.workTeamCode;
//当数组的长度为0时候执行
if("undefined"==typeof arrObj){
addDataValue(1);
}
//当数组的长度为1的时候执行
else if("undefined"==typeof arrObj.length){
addDataValue(2);
}else{
addDataValue(3);
}
delAdd();
}
//把录入table的值放到文本框显示
function addDataValue(obj){
//当数组的长度为1时候执行
if(obj<2)
{
var h=document.all.code;
var s=document.getElementById("workTeamCode");
s.value=h.value;
arrObj=document.all.name;
woodadd=document.getElementById("workTeamName");
woodadd.value=arrObj.value;
}else
//当数组的长度大于2时候执行
{
var h=document.getElementById("code");
var s=document.getElementsByName("workTeamCode");
s[s.length-1].value=h.value;
arrObj=document.getElementById("name");
woodadd=document.getElementsByName("workTeamName");
woodadd[woodadd.length-1].value=arrObj.value;
}
}
//还原文本框内容
function delAdd(){
document.getElementById("code").value="";
document.getElementById("name").value="";
}
//修改指定的行数据
function updateData(obj){
obj.readOnly=false;
obj.focus();
}
// 修改指定的行
function updateRow(){
var arrObj = document.all.update;
var loadModeNamet = document.getElementsByName("workTeamCode");
var loadModePricet= document.all.workTeamName;
var srcObj = event.srcElement;
//当数组的长度为1的时候执行
if("undefined"==typeof arrObj.length){
loadModePricet.readOnly=false;
loadModePricet.style.backgroundColor="#00FFFF";
}else{
for(var i=0; i<arrObj.length; i++)
{
if(srcObj == arrObj[i])
{
loadModePricet[i].style.backgroundColor="#00FFFF";
loadModePricet[i].readOnly=false;
updateData(arrObj[i]);
}
}
}
}
//当文本框焦点丢失后触发的事件
function lostblur(obj){
if(obj.readOnly==false){
var arrObj=obj;
//此处可以调用Trim过滤掉空格 如:var str= Trim(arrObj.value);
var str= arrObj.value;
if(str==""){
alert("此处不允许为空");
obj.value="";
arrObj.focus();
return;
}else {
arrObj.readOnly=true;
arrObj.style.backgroundColor="#FFFFFF";
}
}
}
</script>
<body>
<form name="form1" action="#" method="post">
<table width="350" cellpadding="2" cellspacing="1" align="center">
<tr>
<td align="center">
代码:
</td>
<td align="center" >
<input type="text" name="code" size="2" maxlength="2" />
</td>
<td align="center">
名称:
</td>
<td align="center">
<input type="text" name="name" size="10" maxlength="5" />
</td>
<td align="center">
<input name="addButton" type="button" value="增 加">
</td>
</tr>
</table>
<hr/>
<table border="1" id="addTab" width="350" cellpadding="2" cellspacing="1" align="center">
<tr>
<td align="center">
代码
</td>
<td align="center">
名称
</td>
<td align="center">
操作
</td>
</tr>
</table>
<div align="center"><input name="addSubmit" type="button" value="保 存"></div>
</form>
</body>
</html>本文出自 “紫晶幻治” 博客,转载请与作者联系!
<head><title>动态添加数据,批量提交保存</title></head>
<script type="text/javascript">
//增加数据
function addData(){
var tableObj=document.getElementById("addTab");
var newRowObj=tableObj.insertRow(tableObj.rows.length);
var loadModeName=newRowObj.insertCell(newRowObj.cells.length);
var loadModePrice=newRowObj.insertCell(newRowObj.cells.length);
var del=newRowObj.insertCell(newRowObj.cells.length);
loadModeName.innerHTML='<input name="workTeamCode" readonly maxlength="2"/>'
loadModePrice.innerHTML='<input name="workTeamName" readonly="readonly" maxlength="5" onblur="lostblur(this)"/>'
del.innerHTML='<input type="button" align="center" name="update" value="修改" onclick="updateRow()">'
var arrObj=document.all.workTeamCode;
//当数组的长度为0时候执行
if("undefined"==typeof arrObj){
addDataValue(1);
}
//当数组的长度为1的时候执行
else if("undefined"==typeof arrObj.length){
addDataValue(2);
}else{
addDataValue(3);
}
delAdd();
}
//把录入table的值放到文本框显示
function addDataValue(obj){
//当数组的长度为1时候执行
if(obj<2)
{
var h=document.all.code;
var s=document.getElementById("workTeamCode");
s.value=h.value;
arrObj=document.all.name;
woodadd=document.getElementById("workTeamName");
woodadd.value=arrObj.value;
}else
//当数组的长度大于2时候执行
{
var h=document.getElementById("code");
var s=document.getElementsByName("workTeamCode");
s[s.length-1].value=h.value;
arrObj=document.getElementById("name");
woodadd=document.getElementsByName("workTeamName");
woodadd[woodadd.length-1].value=arrObj.value;
}
}
//还原文本框内容
function delAdd(){
document.getElementById("code").value="";
document.getElementById("name").value="";
}
//修改指定的行数据
function updateData(obj){
obj.readOnly=false;
obj.focus();
}
// 修改指定的行
function updateRow(){
var arrObj = document.all.update;
var loadModeNamet = document.getElementsByName("workTeamCode");
var loadModePricet= document.all.workTeamName;
var srcObj = event.srcElement;
//当数组的长度为1的时候执行
if("undefined"==typeof arrObj.length){
loadModePricet.readOnly=false;
loadModePricet.style.backgroundColor="#00FFFF";
}else{
for(var i=0; i<arrObj.length; i++)
{
if(srcObj == arrObj[i])
{
loadModePricet[i].style.backgroundColor="#00FFFF";
loadModePricet[i].readOnly=false;
updateData(arrObj[i]);
}
}
}
}
//当文本框焦点丢失后触发的事件
function lostblur(obj){
if(obj.readOnly==false){
var arrObj=obj;
//此处可以调用Trim过滤掉空格 如:var str= Trim(arrObj.value);
var str= arrObj.value;
if(str==""){
alert("此处不允许为空");
obj.value="";
arrObj.focus();
return;
}else {
arrObj.readOnly=true;
arrObj.style.backgroundColor="#FFFFFF";
}
}
}
</script>
<body>
<form name="form1" action="#" method="post">
<table width="350" cellpadding="2" cellspacing="1" align="center">
<tr>
<td align="center">
代码:
</td>
<td align="center" >
<input type="text" name="code" size="2" maxlength="2" />
</td>
<td align="center">
名称:
</td>
<td align="center">
<input type="text" name="name" size="10" maxlength="5" />
</td>
<td align="center">
<input name="addButton" type="button" value="增 加">
</td>
</tr>
</table>
<hr/>
<table border="1" id="addTab" width="350" cellpadding="2" cellspacing="1" align="center">
<tr>
<td align="center">
代码
</td>
<td align="center">
名称
</td>
<td align="center">
操作
</td>
</tr>
</table>
<div align="center"><input name="addSubmit" type="button" value="保 存"></div>
</form>
</body>
</html>本文出自 “紫晶幻治” 博客,转载请与作者联系!
相关文章推荐
- js动态添加行hiddenfield保存xml或json 数据 提交给后台处理
- 以申购单为实例,讲解Jquery动态删减行,新增行添加鼠标事件,子窗口与父窗口传值,自动计算金额,及输入值的验证,前台数据批量提交到后台action
- Extjs 将grid的数据批量保存为arrayjson提交
- 批量添加数据(Form表单提交)
- js动态添加datagrid表头&批量保存实战研究
- js表单动态添加数据并提交
- asp.net后台动态添加表格并将添加的数据保存到数库中
- Extjs二维数组,控制editorgrid动态添加行,批量保存
- jQuery实现表单动态添加数据并提交的方法
- GridView动态新增行 删除行 适合多数据批量修改保存 新增数据验证
- javascript动态添加表格数据行,ASP后台数据库保存例子
- (初学日记)repeater动态添加行,保存新增数据
- jQuery - 动态添加、删除form表单项(附:新增项数据无法提交问题解决)
- javascript动态添加表格数据行(ASP后台数据库保存例子)
- GridView动态新增行 删除行 适合多数据批量修改保存 新增数据验证
- 本人改编的“javascript动态添加表格数据行,ASP后台数据库保存例子”
- 在ListView中动态添加EditText并对其中的数据进行保存和由于复用引起的Editext中的内容显示异常的解决方案
- jQuery 实时保存页面动态添加的数据的示例
- <s:iterator>标签遍历动态数组<泛型>:ArrayList<对象>,怎样批量修改数据并一起提交到后台
- javascript动态添加表格数据行(ASP后台数据库保存例子)