在html静态页面里面怎么用函数调用数据库啊?求高手帮忙
3个回答
展开全部
html是静态页面,因此,如果实现数据库动态调用,最好的方法就是使用AJAX技术,使用XMLHTTPrequest来请求。
给一个示例吧:
function requestHttp(){
var request;
if(window.XMLHttpRequest) {
request = new XMLHttpRequest();
if(request.overrideMimeType) {request.overrideMimeType('text/xml');
}
} else if(window.ActiveXObject) {
var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
for(var i=0; i<versions.length; i++) {try
{request = new ActiveXObject(versions[i]);break;}
catch(e) {}
}}
return request;
}
function xmlhttp(){
this.r=requestHttp();
}
xmlhttp.prototype.postopen=function(url,data){
this.r.open('POST',url,false);
this.r.setrequestheader("content-type","application/x-www-form-urlencoded");
this.r.onreadystatechange = ReadyStateChange(this);
if(typeof(data)=='undefined')
this.r.send();
else
this.r.send(data);
}
xmlhttp.prototype.getopen=function(url){
if(window.XMLHttpRequest) {this.r.open('GET',url);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send(null);
} else {
this.r.open("GET", url, true);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send();
}
}
ReadyStateChange=function(obj){
return function(){
if(obj.r.readyState==4){
obj.status=obj.r.status;
obj.text=obj.r.responseText;
obj.body=obj.r.responseBody;
callpage();
}
}
}
把这个别存为Shopajax.js
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript" src="shopajax.jss"></script>
</HEAD>
<BODY>
<div id="as"></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
var ajax=new xmlhttp();
debugger
ajax.getopen("1.html");
function callpage(){
if(ajax.status==0){//本地为0,远程为200
var obj=eval('('+ajax.text+')');
document.getElementById("as").innerHTML="年纪:"+obj.Age+"<br>薪水:"+obj.Money;
}
}
//-->
</SCRIPT>
</BODY>
</HTML>
这个随便存一个页面保存为index.html
{"Money":2000.00,"Age":21}
把这个存成一个1.html
保存完后,点击Index.html就可以看到Div里面有值了。值是从1.html里面取到的。这个过程实现 了Ajax
给一个示例吧:
function requestHttp(){
var request;
if(window.XMLHttpRequest) {
request = new XMLHttpRequest();
if(request.overrideMimeType) {request.overrideMimeType('text/xml');
}
} else if(window.ActiveXObject) {
var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
for(var i=0; i<versions.length; i++) {try
{request = new ActiveXObject(versions[i]);break;}
catch(e) {}
}}
return request;
}
function xmlhttp(){
this.r=requestHttp();
}
xmlhttp.prototype.postopen=function(url,data){
this.r.open('POST',url,false);
this.r.setrequestheader("content-type","application/x-www-form-urlencoded");
this.r.onreadystatechange = ReadyStateChange(this);
if(typeof(data)=='undefined')
this.r.send();
else
this.r.send(data);
}
xmlhttp.prototype.getopen=function(url){
if(window.XMLHttpRequest) {this.r.open('GET',url);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send(null);
} else {
this.r.open("GET", url, true);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send();
}
}
ReadyStateChange=function(obj){
return function(){
if(obj.r.readyState==4){
obj.status=obj.r.status;
obj.text=obj.r.responseText;
obj.body=obj.r.responseBody;
callpage();
}
}
}
把这个别存为Shopajax.js
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript" src="shopajax.jss"></script>
</HEAD>
<BODY>
<div id="as"></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
var ajax=new xmlhttp();
debugger
ajax.getopen("1.html");
function callpage(){
if(ajax.status==0){//本地为0,远程为200
var obj=eval('('+ajax.text+')');
document.getElementById("as").innerHTML="年纪:"+obj.Age+"<br>薪水:"+obj.Money;
}
}
//-->
</SCRIPT>
</BODY>
</HTML>
这个随便存一个页面保存为index.html
{"Money":2000.00,"Age":21}
把这个存成一个1.html
保存完后,点击Index.html就可以看到Div里面有值了。值是从1.html里面取到的。这个过程实现 了Ajax
展开全部
html是静态代码,不能调用数据库
如果调用数据库,就要用动态代码,网页就变成动态的,
至于怎么调用,先要看你用什么语言代码了,有很多种,例如ASP,PHP,JSP等等
如果调用数据库,就要用动态代码,网页就变成动态的,
至于怎么调用,先要看你用什么语言代码了,有很多种,例如ASP,PHP,JSP等等
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class.forName();
或者JNDI
或者JNDI
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询