中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁 > 技術文檔 > 網絡編程 > 如何使用ajax開發(fā)web應用程序
用MVC模型引導你的WEB設計思路 回到列表 asp編譯成dll-圖形化教程
 如何使用ajax開發(fā)web應用程序

作者:Sheneyan 時間: 2006-02-07 文檔類型:翻譯 來自:藍色理想

第 1 頁 如何使用ajax開發(fā)web應用程序 [1]
第 2 頁 如何使用ajax開發(fā)web應用程序 [2]
第 3 頁 如何使用ajax開發(fā)web應用程序 [3]
第 4 頁 如何使用ajax開發(fā)web應用程序 [4]

作者: Jonathan Fenocchi
時間:2005.10.25
譯者:Sheneyan
英文原文:
http://webreference.com/programming/javascript/jf/column15/

在這個系列的第四部分中,你將會學習如何在不刷新頁面的前提下通過form來提交數(shù)據(jù)。 這能在很多方面發(fā)揮作用。讓我們現(xiàn)從表單(form)的HTML開始,然后我們再給它加上javascript腳本,通過ajax提交表單。

請注意,在這篇文章中我會使用php來響應javascript提交的服務端請求,所以在文章中提及的代碼需要保存為一個后綴為.php的文件并在一個支持php的服務器上運行。它沒法直接在你的本地硬盤上工作。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>如何使用ajax開發(fā)web應用程序(4)</title>
<style type="text/css">
.note {
background: #ffa;
border: solid 1px #f30;
margin: 1em;
padding: 0.5em;
}
</style>
</head>
<body>
<form action="ajax_output.php" method="post"><fieldset>
<label>姓名: <input type="text" name="name"></label><br>
<label>出生地: <input type="text" name="born"></label><br>
<label><input type="submit" value="Submit form"></label>
</fieldset></form>
</body>
 
這個表單會提交到這個php文件:ajax_output.php--將接受數(shù)據(jù)并輸出它。

<?php
if(isset($_POST)){
echo '<div class="note">';
if(isset($_POST['name']) && !empty($_POST['name'])){
echo '<p>你好, '.$_POST['name'].'.</p>';
}
if(isset($_POST['born']) && !empty($_POST['born'])){
echo '<p>你出生于風景如畫的'.$_POST['born'].'!</p>';
}
echo '</div>';
}
?>

這個php文件將輸出一個包含兩個段落的DIV。如果文本域name填寫了內容,將輸出"你好, [你的名字]"。如果文本域born填寫了內容,將會輸出"你出生于風景如畫的[出生地名]!",如果你兩個空格都填了,那將輸出兩個消息到同一個DIV中。

該添加javascript了,下面是javascript代碼以及說明。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>如何使用ajax開發(fā)web應用程序(4)</title>
<style type="text/css">
.note {
background: #ffa;
border: solid 1px #f30;
margin: 1em;
padding: 0.5em;
}
</style>
<script type="text/javascript">
function submitForm(f){
if(window.XMLHttpRequest){
var xmlReq = new XMLHttpRequest();
} else if(window.ActiveXObject) {
var xmlReq = new ActiveXObject('Microsoft.XMLHTTP');
}
var formData = '', elem = '';
for(var s=0; s<f.elements.length; s++){
elem = f.elements[s];
if(formData != ''){
formData += '&';
}
formData += elem.name+"="+elem.value;
}
xmlReq.onreadystatechange = function(){
if(xmlReq.readyState == 4){
document.getElementById('insert').innerHTML = xmlReq.responseText;
}
}
xmlReq.open(f.method, f.action, true);
xmlReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlReq.send(formData);
return false;
}
</script>
</head>
<body>
<div id="insert"></div>
<form action="ajax_output.php" method="post" onsubmit="return submitForm(this)"><fieldset>
<label>姓名: <input type="text" name="name"></label><br>
<label>出生地: <input type="text" name="born"></label><br>
<label><input type="submit" value="提交表單"></label>
</fieldset></form>
</body>

查看示例

你先注意以下javascript標簽部分。這是一個將在表單被提交的時候觸發(fā)的函數(shù)(表單里的onsubmit事件句柄(event handler)將調用這個函數(shù))。這個函數(shù)首先創(chuàng)建一個XMLHttpRequest,它用于傳輸數(shù)據(jù)到表單的action(ajax_output.ph[)。下一步,我們遍歷每一個表單元素并將它們使用(&)連接起來以便于數(shù)據(jù)可以被正確地傳送給action。接下來,我們創(chuàng)建了一個onReadyStateChange函數(shù)用于將這個id為insert的DIV和ajax_output.php傳輸回來的數(shù)據(jù)組合起來。然后我們打開表單的method(ajax_output.php)--用POST或者GET(在我們的ajax_output.php中,我們只接受POST的數(shù)據(jù))--以及action (ajax_output.php)。我們需要設置正確的請求頭(request header)以便于javascript能夠發(fā)送經過URL編碼的form數(shù)據(jù)(form urlencoded data)給ajax_output.php,最后就是讓javascript發(fā)送數(shù)據(jù)了。

結論

這個腳本是非常通用并且在很多方面都很有用的,因為你能夠將form里面的任何表單元素組合成數(shù)據(jù)并post給這個表單的action而不需要重新加載頁面。你只需要簡單的修改這個表單的action指向的文件,相應地修改和表單對應的輸入域的名字以及如何處理數(shù)據(jù)。

關于作者

Jonathan Fenocchi(mail:jona#slightlyremarkable.com #換成@)是一個網絡開發(fā)者,主攻web設計,客戶端腳本,php腳本。
他的網站位于:http://www.slightlyremarkable.com

本文鏈接:http://www.95time.cn/tech/program/2006/3214.asp 

出處:藍色理想
責任編輯:moby

上一頁 如何使用ajax開發(fā)web應用程序 [3] 下一頁

◎進入論壇網絡編程版塊參加討論

相關文章 更多相關鏈接
淺談flash web的結構
設計五原則
Web 表單設計原則和實踐
關于中英文正文字體比較
網站程序員如何應對web標準
作者文章 更多作者文章
客戶端模版的應用
[js效果] 圖片加載進度實時顯示
javascript的函數(shù)
ajax的缺點
用Google Sitemaps幫助你SEO
關鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設計比賽 網頁制作 web標準 用戶體驗 UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點最新 站點最新列表
周大!熬•自然”設計大賽開啟
國際體驗設計大會7月將在京舉行
中國國防科技信息中心標志征集
云計算如何讓安全問題可控
云計算是多數(shù)企業(yè)唯一擁抱互聯(lián)網的機會
阿里行云
云手機年終巨獻,送禮標配299起
阿里巴巴CTO王堅的"云和互聯(lián)網觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機主題設計大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個可愛的鉛筆圖標
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機制之一:普通流
25個最佳最閃亮的Eclipse開發(fā)項目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁 首頁 前頁 后頁 尾頁 頁次:4/41個記錄/頁 轉到 頁 共4個記錄

藍色理想版權申明:除部分特別聲明不要轉載,或者授權我站獨家播發(fā)的文章外,大家可以自由轉載我站點的原創(chuàng)文章,但原作者和來自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來自一節(jié),自行鏈接)。文章版權歸我站和作者共有。

轉載要求:轉載之圖片、文件,鏈接請不要盜鏈到本站,且不準打上各自站點的水印,亦不能抹去我站點水印。

特別注意:本站所提供的攝影照片,插畫,設計作品,如需使用,請與原作者聯(lián)系,版權歸原作者所有,文章若有侵犯作者版權,請與我們聯(lián)系,我們將立即刪除修改。

您的評論
用戶名:  口令:
說明:輸入正確的用戶名和密碼才能參與評論。如果您不是本站會員,你可以注冊 為本站會員。
注意:文章中的鏈接、內容等需要修改的錯誤,請用報告錯誤,以利文檔及時修改。
不評分 1 2 3 4 5
注意:請不要在評論中含與內容無關的廣告鏈接,違者封ID
請您注意:
·不良評論請用報告管理員,以利管理員及時刪除。
·尊重網上道德,遵守中華人民共和國的各項有關法律法規(guī)
·承擔一切因您的行為而直接或間接導致的民事或刑事法律責任
·本站評論管理人員有權保留或刪除其管轄評論中的任意內容
·您在本站發(fā)表的作品,本站有權在網站內轉載或引用
·參與本評論即表明您已經閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評論文檔 | 報告錯誤  
專業(yè)書推薦 更多內容
網站可用性測試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網站UI 設計之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設計》
犀利開發(fā)—jQuery內核詳解與實踐
作品集 更多內容

雜⑦雜⑧ Gold NORMANA V2