您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何讓Ajax異步傳輸與PHP實現交互”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何讓Ajax異步傳輸與PHP實現交互”吧!
背景
前臺頁面兩個select框,一個與學院關聯,另一個與專業關聯,現需要選擇學院select框后,顯示學院相關信息,且專業select下面僅有屬于該學院的專業名稱。也就是實現一個二級聯動效果。
兩個select里面分別定義onchange事件,事件中利用ajax的GET方法向后臺PHP遞交信息,再將查詢得到的信息echo出來或document.write。
注:代碼參考了有位叫y0umer的博主寫的。
復制代碼 代碼如下:
<script type="text/javascript">
var XmlHttp;
function createXmlHttpRequestObject(){
if(window.ActiveXobject){ // 判斷是否是ie瀏覽器
try { // try開始
xmlhttp = new ActiveXobject("Microsoft.XMLHTTP"); // 使用ActiveX對象創建ajax
}catch(e){
xmlHttp = false;
} // try end
}else{ //Chrome、FireFox等非ie內核
try{
xmlHttp = new XMLHttpRequest(); //視為非ie情況下
}catch(e){
xmlHttp = false; // 其他非主流瀏覽器
}
} // 判斷結束,如果創建成功則返回一個DOM對象,如果創建不成功則返回一個false
if(xmlHttp)
{
return xmlHttp;
}else{
alert("對象創建失敗,請檢查瀏覽器是否支持XmlHttpRequest!");
}
} // 函數體
//學院下拉框事件
function showCollegeInfo(){
var selectIndex = document.getElementById("college").selectedIndex;//獲得是第幾個被選中了
var value = document.getElementById("college").options[selectIndex].value;
if(value)
{
// 先創建一個對象實例
createXmlHttpRequestObject();
// 使用事件對象獲取文本框ID的值
var vCollege = value;
var url = "college.php?xy="+vCollege; //待發送URL
url=encodeURI(url);
xmlHttp.onreadystatechange=ajaxok; // 判斷瀏覽器狀態欄 (接收玩數據觸發的事件)
xmlHttp.open("GET",url,false); // GET向服務器端發送數據
xmlHttp.send(null);
document.getElementById("collegeinfo").style.display="block";//顯示學院信息的div
}else{
document.getElementById("collegeinfo").style.display="none";//隱藏學院信息的div
}
}
function ajaxok()
{
if(xmlHttp.readyState == 4 && xmlHttp.status==200)
{
document.getElementById("collegeinfo").innerHTML = xmlHttp.responseText;
}
}
//專業下拉框事件
function showMajorInfo(){
var selectIndex = document.getElementById("major").selectedIndex;//獲得是第幾個被選中了
var value = document.getElementById("major").options[selectIndex].value;
if(value)
{
// 先創建一個對象實例
createXmlHttpRequestObject();
// 使用事件對象獲取文本框ID的值
var vMajor = value;
var url = "major.php?zy="+vMajor; //待發送URL
url=encodeURI(url);
xmlHttp.onreadystatechange=ajaxok2; // 判斷瀏覽器狀態欄 (接收玩數據觸發的事件)
xmlHttp.open("GET",url,false); // GET向服務器端發送數據
xmlHttp.send(null);
document.getElementById("majorinfo").style.display="block";//顯示專業信息的div
}else{
document.getElementById("majorinfo").style.display="none";//隱藏專業信息的div
}
}
function ajaxok2()
{
if(xmlHttp.readyState == 4 && xmlHttp.status==200)
{
document.getElementById("majorinfo").innerHTML = xmlHttp.responseText;
}
}
</script>
感謝各位的閱讀,以上就是“如何讓Ajax異步傳輸與PHP實現交互”的內容了,經過本文的學習后,相信大家對如何讓Ajax異步傳輸與PHP實現交互這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。