`

XMLHttpRequest 开发者的梦想

阅读更多

XMLHttpRequest 对象用于在后台与服务器交换数据。

XMLHttpRequest 对象是开发者的梦想 ,因为您能够:

  • 在不重新加载页面的情况下更新网页

  • 在页面已加载后从服务器请求数据

  • 在页面已加载后从服务器接收数据

  • 在后台向服务器发送数据

所有现代的浏览器都支持 XMLHttpRequest 对象。

1、如何得到对象

function createXmlHttpRequest()
{
     if(window.ActiveXObject)
     {
         return new ActiveXObject("Microsoft.XMLHTTP");
     }
     else if (window.XMLHttpRequest) // For general cases.
     {
        return new XMLHttpRequest();
     }
}

 2、如何利用该对象

function getNextLevelCat(categoryLevel,selectId)
    {
        var url="${base}/nextLevelCateAjax.action?parentCategoryId="+categoryLevel;
        //alert(url);
        xmlHttpRequest=createXmlHttpRequest();    
        xmlHttpRequest.onreadystatechange=function(){displayCategory(selectId)};
        xmlHttpRequest.open("GET",url,true);
        xmlHttpRequest.send(null);
    }
    
    function displayCategory(selectId)
    {
    	if(xmlHttpRequest.readyState == 4) 
        {        
            if(xmlHttpRequest.status == 200) 
            {
                //alert(xmlHttpRequest.responseText);
				var array = eval(xmlHttpRequest.responseText);
       			addOption(array[0],selectId,'\u8bf7\u9009\u62e9');
       			//addOption(array[1],'third','\u5168\u90E8');
       
        		// 控制标签隐藏,显示
			    initPage();
            }    
        }
    }

 

function addOption(array,id,head)
{
	var first = document.getElementById(id);
	var othershowstyle = document.getElementById('level31') ;
	var normalshowstyle = document.getElementById('level3') ;
	first.options.length=0;
	if(array.length == 0){
		othershowstyle.style.display="none";
		normalshowstyle.style.display="block";
		if(head!='')
		   {
			var newOption = document.createElement("OPTION");                                                     
		    newOption.text=head;
		    newOption.value='';                                                                       
		    first.options.add(newOption);
		    }
	}else if(array.length>0){
		//alert('array[0].siteId'+array[0].siteId+'id' +id);
		//线上id为10
		if(array[0].siteId == '9' && id == 'third'){
			//alert('成功进入!');
			othershowstyle.style.display="block";
			normalshowstyle.style.display="none";
			var htmlstring='';
			 for(i=0;i<array.length;i++)                                                            
		   	    {
				 htmlstring=htmlstring+'<input type=\"checkbox\" name=\"checkbox\" value=\"'+array[i].id+'\"/>'+trim(array[i].categoryName);
		   	     htmlstring = htmlstring +'<input type=\"text\" id=\"checkbox'+array[i].id+'\" name=\"checkboxvalue\"/><br/>';
		   	    }
			 //alert(htmlstring);
			 othershowstyle.innerHTML=htmlstring;
		}else{
			othershowstyle.style.display="none";
			normalshowstyle.style.display="block";
			   if(head!='')
			   {
				var newOption = document.createElement("OPTION");                                                     
			    newOption.text=head;
			    newOption.value='';                                                                       
			    first.options.add(newOption);
			    }
		         for(i=0;i<array.length;i++)                                                            
		   	    {
		         var newOption = document.createElement("OPTION");                                                     
		         newOption.text=trim(array[i].categoryName);                                                                   
		         newOption.value=array[i].id;                                                                       
		         first.options.add(newOption);                                                                       
		   	     }
		}
	}
		   
}
 

 

分享到:
评论

相关推荐

    梦想成真HTML5游戏源码

    这是因为现代浏览器出于安全考虑,对于某些API(如XMLHttpRequest、WebSocket)有同源策略限制,本地文件系统环境下无法正常工作。你可以选择在本地搭建一个简单的HTTP服务器,如使用Node.js的http-server模块,或者...

    Ajax 实例应用

    **Ajax 实例应用** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下,能够更新部分网页的技术。...通过深入理解Ajax的工作原理和实例应用,开发者可以构建更高效、更友好的Web应用。

    Manning.Prototype.and.Scriptaculous.in.Action

    Prototype库提供了对Ajax的支持,包括创建XMLHttpRequest对象、发送请求、处理响应等功能。理解Ajax的基本原理和使用方式对于现代Web应用的开发至关重要,因为它极大地提高了用户体验,使得页面操作更加流畅和快速。...

    前后端框架,前端后端数据处理

    通过XMLHttpRequest对象或者现代浏览器提供的fetch API,前端可以异步地从后端获取数据,然后使用JavaScript动态渲染页面。 为了确保数据安全性和性能,前后端之间的通信通常通过RESTful API实现。REST...

    jsp智能提示完整版,jquery+ajax+text实现

    为了实现这个功能,开发者需要理解JSP的页面生命周期,jQuery的选择器和事件处理,Ajax的XMLHttpRequest对象或者Promise API,以及如何设计数据库查询以优化性能。 总的来说,这个项目涵盖了Web开发中的多个重要...

    网络编程运动

    还有像Fetch API和XMLHttpRequest对象,它们是进行网络请求的基础工具,用于获取或发送服务器数据。 总之,JavaScript在网络编程中的应用广泛且深入,从简单的网页交互到复杂的服务器应用,无处不在。随着技术的...

    圣诞树源码有颗温暖的树陪你过圣诞

    通过JavaScript的`fetch` API或XMLHttpRequest,可以从服务器获取或发送数据。 8. **音频处理**:如果项目包含背景音乐,需要了解如何在Web端播放音频。可以使用HTML5的`&lt;audio&gt;`标签结合JavaScript进行控制,如...

    AJAX Queue Class-开源

    在使用这个开源库时,开发者需要注意兼容性问题,因为AJAX依赖于浏览器支持的XMLHttpRequest或fetch API。为了确保在较旧的浏览器中也能正常工作,可能需要引入像jQuery这样的库,它们提供了跨浏览器的AJAX实现。 ...

    h5\js手机(IOS,安卓)拍照

    在移动互联网时代,H5和JavaScript技术被广泛应用...在整个过程中,开发者需要不断优化用户体验,处理可能出现的异常情况,并确保在不同平台和设备上的功能一致性。这就是H5和JS在移动设备上实现拍照功能的核心知识点。

    hack-or-snooze-ajax-api

    2. **Promise对象**:考虑到旧版的XMLHttpRequest存在异步处理的复杂性,现代JavaScript更倾向于使用Promise来管理异步操作,提供了一种更优雅的方式来处理回调地狱。 3. **fetch API**:作为XMLHttpRequest的替代...

    java script

    通过`XMLHttpRequest`对象或更现代的`fetch` API,可以发送异步请求,获取服务器数据,然后用JavaScript动态更新页面内容。 6. **jQuery库**: 虽然JavaScript本身功能强大,但jQuery简化了许多常见任务,如DOM...

    JSP程序设计精彩实例

    6. **AJAX交互**:结合JavaScript和XMLHttpRequest,实现异步更新页面部分内容。 7. **错误与异常处理**:配置全局错误页面,处理运行时错误和异常,提升应用健壮性。 综上所述,“JSP程序设计精彩实例”PDF教程应...

    Dosyalar

    通过创建FormData对象,可以将文件添加到表单数据中,然后使用XMLHttpRequest或Fetch发送到服务器。Fetch API提供了更现代、更灵活的接口,可以方便地处理异步请求和响应。 对于大型文件处理,JavaScript提供了一些...

    tool:个人代码库及日常工作中的笔记

    4. **AJAX**:使用XMLHttpRequest或fetch API进行异步数据请求,实现页面的无刷新更新。 5. **框架与库**:可能包含了使用React、Vue、Angular等JavaScript框架编写的应用示例,或者jQuery等库的用法。 6. **ES6及...

    recordings-webapp:重播由 DSD 制作的录音的 Web 应用程序

    使用XMLHttpRequest或Fetch API,开发者可以实现异步数据交换,确保用户在等待文件加载时不会阻塞页面。 **用户体验与交互设计** 一个优秀的Web应用不仅要有强大的功能,还要有良好的用户体验。"recordings-webapp...

    ajaaaaax:JavaScript提取以HTML显示API结果

    通过使用Ajax,开发者可以在不刷新整个页面的情况下与服务器交换数据并更新部分网页内容,从而提高用户体验。 在“ajaaaaax:JavaScript提取以HTML显示API结果”这个主题中,我们将深入探讨如何利用JavaScript从API...

    makeRavenGreatAgain:让自己再次变得伟大

    了解XMLHttpRequest和更现代的Fetch API,以及错误处理和状态管理是必要的。 5. **Promise和async/await**:处理异步操作的有效工具,Promise能帮助解决回调地狱问题,而async/await则提供了更清晰的异步控制流程。...

    Http3:这是一个使用Fetch和async await功能制成的HTTP库。打开控制台以运行代码。

    它取代了传统的XMLHttpRequest(XHR)API,提供了一种更简洁、更强大的接口来处理网络请求。Fetch API支持异步操作,允许开发者使用`async`和`await`关键字编写更易读、更直观的代码。`async`函数返回一个Promise,...

    HTML充值收款源码.rar

    这个源码可能包含与服务器通信的AJAX请求,使用XMLHttpRequest或Fetch API来发送充值请求,并处理服务器返回的响应。后端通常会提供API接口,用于接收前端发送的充值金额、用户ID等信息,进行实际的支付处理,如调用...

    Band-of-Brothers-website-old:用CodeSandbox创建

    这通常涉及到AJAX(异步JavaScript和XML)技术,通过XMLHttpRequest或fetch API发送请求,获取并处理返回的数据。 4. **动画与视觉效果**:为了使“兄弟乐队”网站更具吸引力,开发者可能会使用JavaScript库如...

Global site tag (gtag.js) - Google Analytics