$.ajax({
type:"GET",
url:"/test.php?ac=ss&bid="+bid+"&date=" + new Date(),
success: function(data){
alert(data)
}
})
}
给你发一个简单例子,test.php去获取数据库内容,可以返回不同的数据,如一般的text,也可以是json等多种类型,接收的时候需要做不同的处理
记得在此之前一定先调用JQ库,这是JQ的AJAX方法,个人理解,不专业
大致是两个步骤:客户端触发读取数据请求,服务器端接收请求查询数据库并返回结果。
1、客户端请求
假设从页面的下拉列表中选择一个客户,当用户在下拉列表中选择某个客户时,会执行名为 "showCustomer()" 的函数。该函数由 "onchange" 事件触发:
function showCustomer(str){
var xmlhttp
if (str=="")
{
document.getElementById("txtHint").innerHTML=""
return
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest()
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText
}
}
xmlhttp.open("GET","getcustomer.asp?q="+str,true)
xmlhttp.send()
}
2、服务器端响应,asp示例:
<%response.expires=-1
sql="SELECT * FROM CUSTOMERS WHERE CUSTOMERID="
sql=sql & "'" & request.querystring("q") & "'"
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open(Server.Mappath("/db/northwind.mdb"))
set rs=Server.CreateObject("ADODB.recordset")
rs.Open sql,conn
response.write("<table>")
do until rs.EOF
for each x in rs.Fields
response.write("<tr><td><b>" & x.name & "</b></td>")
response.write("<td>" & x.value & "</td></tr>")
next
rs.MoveNext
loop
response.write("</table>")
%>
既然是用AJAX,当然AJAX是调用服务端的方法访问数据库再对数据库进行增、删、改。首先你要理解WEB编程的原理,当一个网页打开后你和服务端的连接是己经断了的,服务端保存不了你当前的状态。不象CS编程。AJAX是客户端的,你肯定不能直接在前台javascript中访问服务端的数据库。
用AJAX第一步,你必需要写好服务端的一个方法,如写一个删除的方法doDelObject(string id){...}你在客户端就调用这个方法。参数是你要删除数据的ID,如:doDelObject(ID001),然后服务端删除完毕后就会返回这个方法的值给你。删除的具体方法那就和AJAX无关了。
另外,做AJAX有好多框架选择,建议你用jquery,如果是.net2003的话有ajaxpro,2005的话有AjaxControlToolkit等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)