幾個月前,因為項目需求,我寫了下面的三個ajax相關的函數。發布出來和大家分享。
第一個是用來無刷新加載一段HTML
第二個是把表單數據轉換成一串請求字符串
第三個是結合函數一和函數二的無刷新提交表單實現。
還有一點要提到的是,無刷新表單提交,還不能對文件上傳進行處理,這個主要是因為瀏覽器的安全設置。目前無刷新的上傳,一般是用iframe來實現的。關于這個,我們在google里搜索能找到很多。
網上雖然已經有很多優秀的ajax的類和函數了,但是或許我這幾個函數對大家還有點用處,于是我就發布出來了。
可以在這里下載。
代碼如下:
//@desc load a page(some html) via xmlhttp,and display on a container
//@param url the url of the page will load,such as "index.php"
//@param request request string to be sent,such as "action=1&name=surfchen"
//@param method POST or GET
//@param container the container object,the loaded page will display in container.innerHTML
//@usage
// ajaxLoadPage('index.php','action=1&name=surfchen','POST',document.getElementById('my_home'))
// suppose there is a html element of "my_home" id,such as "<span id='my_home'></span>"
//@author SurfChen <surfchen@gmail.com>
//@url http://www.surfchen.org/
//@license http://www.gnu.org/licenses/gpl.html GPL
function ajaxLoadPage(url,request,method,container)
{
method=method.toUpperCase();
var loading_msg='Loading...';//the text shows on the container on loading.
var loader=new XMLHttpRequest;//require Cross-Browser XMLHttpRequest
if (method=='GET')
{
urls=url.split("?");
if (urls[1]=='' || typeof urls[1]=='undefined')
{
url=urls[0]+"?"+request;
}
else
新聞熱點
疑難解答
圖片精選