Ajax 异步传输

问题描述

function getData(){var url = "Show.do?dh=1";createXmlHttpReq();xmlHttp.onreadystatechange = function(){if(xmlHttp.readyState == 4 && xmlHttp.status == 200){var resp = xmlHttp.responseText;Convert(resp);}}xmlHttp.open("get",url,true);xmlHttp.send(null);}function Convert(resp){var mtb = document.getElementById("my_tb");var par = resp.parseJSON();var my_tb = document.getElementById("my_tb");for(var i = 0 ; i < par.length ; i ++){//alert(par[i].cate_id+"t"+par[i].cate_name+"t"+par[i].ori_price);var tbl = document.createElement("table");var tbody = document.createElement("tbody");var tr = document.createElement("tr");var td = document.createElement("td");td.setAttribute("vAlign","top");td.setAttribute("width","90");td.setAttribute("height","80");td.innerHTML = "<A href="+par[i].img_path+" target=_blank><IMG height=80 alt=点击图片查看内容 src="+par[i].img_path+" width=80 border=0></A>";var td2 = document.createElement("td");td2.setAttribute("vAlign","top");var tb = document.createElement("table");tb.setAttribute("cellSpacing","1");tb.setAttribute("cellPadding","0");tb.setAttribute("width","100%");tb.setAttribute("align","center");tb.setAttribute("border","0");var body = document.createElement("tbody");var tr2 = document.createElement("tr");var td3 = document.createElement("td");td3.innerHTML = "<A href=# target=_blank><STRONG>"+par[i].cate_name+"</STRONG></A>";var tr3 = document.createElement("tr");var td4 = document.createElement("td");td4.setAttribute("height","21");td4.innerHTML = "<FONT color=#ff0000>现价:人民币"+par[i].cur_price+"元</FONT><BR><a href=#>"+par[i].descript+"</a>!";tr2.appendChild(td3);tr3.appendChild(td4);body.appendChild(tr2);body.appendChild(tr3);tb.appendChild(body);td2.appendChild(tb);tr.appendChild(td);tr.appendChild(td2);tbody.appendChild(tr);tbl.appendChild(tbody);mtb.appendChild(tbl); } alert("完成");}<TABLE cellSpacing=0 cellPadding=0 width=776 align=center border=0 id = "my_tb"></TABLE>这代码有问题吗,为什么运行至 alert("完成") 消息弹出, 网页仍然没有任何字迹出现,求老哥们帮忙看看。 问题补充:dieslrae 写道

解决方案

在循环前alert(par.length)看看是否有数据。如果有的话将你生成的html按照逻辑打印一份出来,然后看看html是否拼错。尤其是appendChild的时候。还在忙不帮你看了。
解决方案二:

var par = resp.parseJSON();parseJSON如果我没记错这是火狐才有方法,老老实实的用eval吧var par = eval("(" + resp + ")")//如果resp是数组就不用+()了

时间: 2024-10-12 04:37:22

Ajax 异步传输的相关文章

jQuery ajax 异步传输实例详解

在jquery中我们要使用异步或同步传输,只要在ajax参数的async设置真或假的设置即可 例, 不使用异步传输  代码如下 复制代码 function changeCartState(arr){    var str=false;    $.ajax({        type : 'POST',        async : false,        url : '/scripts/cart.php',        data: {act:'buy',itemId:arr},      

ajax异步传输:IBM指南 - Ajax的传输方式

IBM刚刚发布了一个AJax传输方式的指南,其中谈到了使用三种方式XMLHttp, script tags, and frames or iframes.对于这三种模式,作者最欣赏script tags,它的装载过程是这样的var urlsToLoad = [];function processRequests(){for( var u in urlsToLoad ){var sObj = document.createElement( 'script' );sObj.src = urlsToL

Ajax异步传输与PHP实现交互示例

背景 前台页面两个select框,一个与学院关联,另一个与专业关联,现需要选择学院select框后,显示学院相关信息,且专业select下面仅有属于该学院的专业名称.也就是实现一个二级联动效果. 两个select里面分别定义onchange事件,事件中利用ajax的GET方法向后台PHP递交信息,再将查询得到的信息echo出来或document.write. 注:代码参考了有位叫y0umer的博主写的. 复制代码 代码如下: <script type="text/javascript&qu

Ajax实现的异步传输与验证示例代码_AJAX相关

Ajax异步传输用得很广,就拿web开发来说吧,当用户注册时,当用户刚一输完,怎么立即判断用户是否存在,并在输入框后显示提示?这就用到了异步传输~~ 它可以让你不离开页面的情况下,获取后台你想要的数据,并显示在当前页面!!好的,下面看个例子 下面是一段Ajax验证代码 复制代码 代码如下: <script type="text/javascript"> //① 设置变量 var xmlHttp ; var flag = false ; var package_name; /

.net ajax数据异步传输的做法

首先需要先建立一个网站,新建如下的一些文件,Web窗体(Default.asp教程x).JScript文件(ajax.js).Web服务(SayHelloService.asmx).Class类(Hello.cs) (补充一点:需要添加一个Microsoft.Web.Preview.dll,在CSDN有的下载)   Default.aspx前台代码: <补充>需要新建一个ScriptManager控件,为了进行ajax数据交互,局部刷新 <%@ Page Language="C

Ajax实现的异步传输与验证示例代码

Ajax异步传输用得很广,就拿web开发来说吧,当用户注册时,当用户刚一输完,怎么立即判断用户是否存在,并在输入框后显示提示?这就用到了异步传输~~ 它可以让你不离开页面的情况下,获取后台你想要的数据,并显示在当前页面!!好的,下面看个例子 下面是一段Ajax验证代码 复制代码 代码如下: <script type="text/javascript"> //① 设置变量 var xmlHttp ; var flag = false ; var package_name; /

解决Ajax全局变量赋值的问题

        在做项目的过程中,以下代码:在1处a为0.然后通过一个ajax请求一个值为1的data赋予a,在2处a为1.然后来到3这里的时候,a还是为0.通过查找网络,得出原因是ajax默认的是异步传输数据,在2处的a的scope只在ajax方法内部. //1 var a = 0; $.ajaxSetup({ async : false }); $.get("a.action", function(data) { //2 a = data; alert(a); }); //3 al

js对ajax返回数组的处理介绍

 本篇文章主要是对js对ajax返回数组的处理进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 引言: ajax异步传输,可以传输字符串,但是数组这样的数据,就不太好传递了,这个时候怎么办呢?   答案是可以通过json来处理,后台将数据数据进行json编码!   然后客户端,通过js来进行解析.   这样问题就解决了!json是一种很好的数据格式!   我做的是异步判断某堂课是否处于上课状态,会从后台接口中获取数组数据!共四堂课,   代码如下:    代码如下: functio

AJAX 异步传输数据的问题_AJAX相关

要异步传输的数据: Xml代码 .... <action xsi:type="basic:JavaScript" script="index += 1;"/> .... Ajax异步传输代码: Js代码 复制代码 代码如下: var postData = "input="+ escape(inputJSON) +"&script="+escape(xml)+ "&feedGeneral=&