|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。数据|数据库|革新|页面 我在作asp程序时常常碰到这类情形:
将数据库中的数据(如一切雇员名)列在列表框中,程序请求举行选择个中一项或多项提交到下一个页面。
但贫苦的是假如数据(如雇员)过量,会给客户的选择带来贫苦--要从很长的列表中举行数据定位。最好的办理办法是用户在选择前接纳含混查询的体例举行数据定位,正确找出必要选择的雇员名,再选择、提交。
成绩呈现在我们程序员眼前:怎样不革新页面选择从数据库中选择数据。自己的办法有两种:
1、接纳双列表框的办法
2、接纳XML办法
本文次要先容第一种办法:接纳双列表框的办法
编程头脑:
接纳双列表框,个中一个为埋没形态,另外一个是显现给用户看的列表框。
程序入手下手将数据(如雇员姓名)分离装进两个列表框中,当用户必要选择雇员时起首将显现列表框清空,再更据选择前提将数据从埋没列表框装进显现列表框中。
如许便可完成不革新页面选择数据库中的内容。
完成:
上面以SQLSERVER为例,选择NorthWind库中Employees表的雇员名举行申明。
<html>
<head>
<title>不革新页面查询的办法</title>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
</head>
<scriptlanguage="javascript">
functionsearch_onclick(){
//失掉选择雇员的名字
searchtext=window.searchContent.value;
//起首移除在一切查询了局列表中的选项
j=searchObj.length;
for(i=j-1;i>=0;i--)
{
searchObj.remove(i);
}
if(searchtext!=""){
//显现切合选择前提的雇员
j=searchSource.length;
for(i=0;i<j;i++){
searchsource=searchSource.options(i).text;
k=searchsource.indexOf(searchtext);
if(k!=-1){
option1=document.createElement("option");
option1.text=searchsource;
option1.value=searchSource.options(i).value;
searchObj.add(option1);
}
}
}
else{
//假如没有输出查询前提则显现一切雇员
j=searchSource.length;
for(i=0;i<j;i++){
searchsource=searchSource.options(i).text;
option1=document.createElement("option");
option1.text=searchsource;
option1.value=searchSource.options(i).value;
searchObj.add(option1);
}
}
}
</script>
<bodybgcolor="#FFFFFF"text="#000000">
<%
servername="wyb"服务器名
user="sa"用户名
pw=""用户暗码
databasename="northwind"数据库名
setconn=server.CreateObject("adodb.connection")
conn.Open"DRIVER=SQLServer;SERVER="&servername&";UID="&user&";pwd="&pw&";DATABASE="& databasename
setrs=server.CreateObject("adodb.recordset")
sql="Selectemployeeid,lastnamefromemployeesorderbyemployeeid"
rs.Opensql,conn%>
<tablewidth="80%"border="1">
<tr>
<td>
<inputtype="text"name="searchContent">
<inputtype="button"name="Button"value="查 询">
</td>
</tr>
<tr>
<td>查询了局<br>
<selectname="searchObj"size="10">
<%dowhilenotrs.eof%>
<optionvalue="<%=rs("employeeid")%>"><%=rs("lastname")%></option>
<%rs.movenext
loop
%>
</select>
<selectname="searchSource"size="10"style="display:none">
<%
rs.movefirst
dowhilenotrs.eof%>
<optionvalue="<%=rs("employeeid")%>"><%=rs("lastname")%></option>
<%rs.movenext
loop
%>
</select>
</td>
</tr>
</table>
<%rs.close
setrs=nothing
%>
</body>
</html>
实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。 |
|