文章摘要
这篇文章介绍了如何在ASP.NET中使用VBScript实现批量添加、修改和删除操作。文章的主要内容包括: 1. **删除操作**:通过表单提交后,检查提交的ID是否为空。如果ID为空,执行数据库删除操作;否则,提醒用户添加数据。删除操作需要进行安全验证,并通过正则表达式验证ID是否为数字。 2. **修改操作**:如果ID不为空,执行数据库更新操作。文章强调了在用户输入验证时,确保所有字段(如姓名、性别、年龄、地址)不能为空。 3. **添加操作**:在表末尾添加新的输入字段,并提供“添加新数据行”按钮。 4. **用户界面**:表单包含删除按钮,用户可以通过点击删除按钮来删除对应的数据行。 5. **JavaScript处理**:代码中包含删除按钮点击事件处理函数`removeRow()`,以及新增数据行的`addRow()`函数。 文章还提到了代码的安全性措施,例如数据库操作的权限验证和用户输入的合法性检查。整体而言,文章详细介绍了如何通过ASP.NET和VBScript实现批量数据操作功能。
<title>asp批量添加修改删除操作示例</title>
<%
if request.Form(“op”)=”update” then’表单提交
ids=request.Form(“ids”)
if ids<>”” then
response.Write “要删除的数据id集合:”&ids&”<br>”
‘=========数据库删除操作 conn.execute(“delete from xxx where id in(“&ids&”)”)’自己注意做安全验证,假定id为数字集合,自己正则RegExp判断有效性,pattern为^\d+(,\d+)*$
end if
rows=request.Form(“name”).count’提交的数据行数据,包括添加/修改的
for i=1 to rows’遍历每行数据
id=request.Form(“id”).item(i)&””
name=request.Form(“name”).item(i)
sex=request.Form(“sex”).item(i)
age=request.Form(“age”).item(i)
addr=request.Form(“addr”).item(i)
if id<>”” then’修改操作,如果id为数字加isnumeric判断
response.Write “要修改数据行:”&id&”|”&name&”|”&sex&”|”&age&”|”&addr&”<br>”
‘修改操作
else’添加操作
response.Write “要添加数据行:”&name&”|”&sex&”|”&age&”|”&addr&”<br>”
‘添加操作
end if
next
end if
%>
<form method=”post” onsubmit=”return check(this)”>
<input type=”hidden” name=”ids” /><!–用于存储要删除记录的id集合–>
<input type=”hidden” name=”op” value=”update” />
<table border=”1″ id=”tb” >
<tr><th>姓名</th><th>性别</th><th>年龄</th><th>地址</th><th>删除</th></tr>
<!——-要修改的数据,自己读取数据库生成,<input type=”hidden” name=”id” value=””/>存储id——–>
<tr>
<td><input type=”text” value=”姓名1″ name=”name” /></td>
<td><input type=”text” value=”性别1″ name=”sex” /></td>
<td><input type=”text” value=”年龄1″ name=”age” /></td>
<td><input type=”text” value=”地址1″ name=”addr” /></td>
<td><input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” value=”1″/></td>
</tr>
<tr>
<td><input type=”text” value=”姓名2″ name=”name” /></td>
<td><input type=”text” value=”性别2″ name=”sex” /></td>
<td><input type=”text” value=”年龄2″ name=”age” /></td>
<td><input type=”text” value=”地址2″ name=”addr” /></td>
<td><input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” value=”2″/></td>
</tr>
<!——-要修改的数据示例结束——–>
<tr><td colspan=”5″ align=”center”><input type=”submit” value=”提交”/> <input type=”button” value=”添加新数据行” onclick=”addRow()” /></td></tr>
</table>
</form>
<script type=”text/javascript”>
function removeRow(btn){
if (confirm(‘确认删除?!’)) {
var tr=btn.parentNode.parentNode;
var id=btn.nextSibling;//注意删除按钮和id这个hidden控件之间不要有空格,要不nextSibling在标准浏览器下是空白节点
if (id.value !=”) {//删除是存在的行而不是新增的,则id存储到ids中
btn.form.ids.value +=(btn.form.ids.value==” ? ” : ‘,’) + id.value;
}
tr.parentNode.removeChild(tr);
}
}
function addRow() {
var tb=document.getElementById(‘tb’), tr=tb.insertRow(tb.rows.length – 1),td=tr.insertCell(0);
td.innerHTML='<input type=”text” name=”name” />’;
td=tr.insertCell(1); td.innerHTML='<input type=”text” name=”sex” />’;
td=tr.insertCell(2); td.innerHTML='<input type=”text” name=”age” />’;
td=tr.insertCell(3); td.innerHTML='<input type=”text” name=”addr” />’;
td=tr.insertCell(4); td.innerHTML='<input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” />’;//新增数据行id为空
}
function check(f) {
var tb=document.getElementById(‘tb’), ipts;
for (var i=1, j=tb.rows.length – 1; i < j; i++) {//输入验证,去掉第一行表头和最后一行操作
ipts=tb.rows[i].getElementsByTagName(‘input’);
if (ipts[0].value==”) { alert(‘请输入姓名!’); ipts[0].focus(); return false; }
if (ipts[1].value==”) { alert(‘请输入性别!’); ipts[1].focus(); return false; }
if (ipts[2].value==”) { alert(‘请输入年龄!’); ipts[2].focus(); return false; }
if (ipts[3].value==”) { alert(‘请输入地址!’); ipts[3].focus(); return false; }
}
}
</script>
<title>asp批量添加修改删除操作示例</title>
<%
if request.Form(“op”)=”update” then’表单提交
ids=request.Form(“ids”)
if ids<>”” then
response.Write “要删除的数据id集合:”&ids&”<br>”
‘=========数据库删除操作 conn.execute(“delete from xxx where id in(“&ids&”)”)’自己注意做安全验证,假定id为数字集合,自己正则RegExp判断有效性,pattern为^\d+(,\d+)*$
end if
rows=request.Form(“name”).count’提交的数据行数据,包括添加/修改的
for i=1 to rows’遍历每行数据
id=request.Form(“id”).item(i)&””
name=request.Form(“name”).item(i)
sex=request.Form(“sex”).item(i)
age=request.Form(“age”).item(i)
addr=request.Form(“addr”).item(i)
if id<>”” then’修改操作,如果id为数字加isnumeric判断
response.Write “要修改数据行:”&id&”|”&name&”|”&sex&”|”&age&”|”&addr&”<br>”
‘修改操作
else’添加操作
response.Write “要添加数据行:”&name&”|”&sex&”|”&age&”|”&addr&”<br>”
‘添加操作
end if
next
end if
%>
<form method=”post” onsubmit=”return check(this)”>
<input type=”hidden” name=”ids” /><!–用于存储要删除记录的id集合–>
<input type=”hidden” name=”op” value=”update” />
<table border=”1″ id=”tb” >
<tr><th>姓名</th><th>性别</th><th>年龄</th><th>地址</th><th>删除</th></tr>
<!——-要修改的数据,自己读取数据库生成,<input type=”hidden” name=”id” value=””/>存储id——–>
<tr>
<td><input type=”text” value=”姓名1″ name=”name” /></td>
<td><input type=”text” value=”性别1″ name=”sex” /></td>
<td><input type=”text” value=”年龄1″ name=”age” /></td>
<td><input type=”text” value=”地址1″ name=”addr” /></td>
<td><input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” value=”1″/></td>
</tr>
<tr>
<td><input type=”text” value=”姓名2″ name=”name” /></td>
<td><input type=”text” value=”性别2″ name=”sex” /></td>
<td><input type=”text” value=”年龄2″ name=”age” /></td>
<td><input type=”text” value=”地址2″ name=”addr” /></td>
<td><input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” value=”2″/></td>
</tr>
<!——-要修改的数据示例结束——–>
<tr><td colspan=”5″ align=”center”><input type=”submit” value=”提交”/> <input type=”button” value=”添加新数据行” onclick=”addRow()” /></td></tr>
</table>
</form>
<script type=”text/javascript”>
function removeRow(btn){
if (confirm(‘确认删除?!’)) {
var tr=btn.parentNode.parentNode;
var id=btn.nextSibling;//注意删除按钮和id这个hidden控件之间不要有空格,要不nextSibling在标准浏览器下是空白节点
if (id.value !=”) {//删除是存在的行而不是新增的,则id存储到ids中
btn.form.ids.value +=(btn.form.ids.value==” ? ” : ‘,’) + id.value;
}
tr.parentNode.removeChild(tr);
}
}
function addRow() {
var tb=document.getElementById(‘tb’), tr=tb.insertRow(tb.rows.length – 1),td=tr.insertCell(0);
td.innerHTML='<input type=”text” name=”name” />’;
td=tr.insertCell(1); td.innerHTML='<input type=”text” name=”sex” />’;
td=tr.insertCell(2); td.innerHTML='<input type=”text” name=”age” />’;
td=tr.insertCell(3); td.innerHTML='<input type=”text” name=”addr” />’;
td=tr.insertCell(4); td.innerHTML='<input type=”button” value=”删除” onclick=”removeRow(this)” /><input type=”hidden” name=”id” />’;//新增数据行id为空
}
function check(f) {
var tb=document.getElementById(‘tb’), ipts;
for (var i=1, j=tb.rows.length – 1; i < j; i++) {//输入验证,去掉第一行表头和最后一行操作
ipts=tb.rows[i].getElementsByTagName(‘input’);
if (ipts[0].value==”) { alert(‘请输入姓名!’); ipts[0].focus(); return false; }
if (ipts[1].value==”) { alert(‘请输入性别!’); ipts[1].focus(); return false; }
if (ipts[2].value==”) { alert(‘请输入年龄!’); ipts[2].focus(); return false; }
if (ipts[3].value==”) { alert(‘请输入地址!’); ipts[3].focus(); return false; }
}
}
</script>
© 版权声明
文章版权归作者所有,未经允许请勿转载。