我地写地Ajax输出不稳定怎么解决老是添加数据后关闭,再来添加数据,数据不输出要刷新好几次才可以输出
没听懂。
就是我先添加数据,然后把它关了,再去打开添加数据,但是我数据还在,没输出出来,我也不能添加数据
感觉像IE下地缓存问题加时间戳JScript code xhr.open("GET","xxxxx.aspx?_dc="+new Date().getTIme(),true);///
贴代码吧
setCollection: function(f, active) { var idx = f.list.selectedIndex; var name = f.elements["name"].value.trim(); var title = f.elements["title"].value.trim(); var href = http://topic.csdn.net/u/20101023/10/f.elements"href".value.trim(); var xmlhttp = new HTTPRequest(); var dat = "active=" + active + "&idx=" + idx + "&name=" + encodeURIComponent(name) + "&collection=" + f.item.local; switch(true) { case (active == 0 && name.length > 0): xmlhttp.send("SetCollection.aspx", dat, function(r) { var option = document.createElement("li"); f.list.appendChild(option); option.className = "selected"; f.list.childNodes[f.list.selectedIndex].className = ""; f.list.selectedIndex = option.nodeIndex = f.list.childNodes.length – 1; option.innerText = name; var node = window.docs.collection.createElement("a"); node.setAttribute("href", r.getText()); node.text = name; window.docs.collection.documentElement.selectSingleNode("body").appendChild(node); f.list.onchange(); }); break; case (active == 1 && name.length > 0): xmlhttp.send("SetCollection.aspx", dat, function() { f.list.childNodes[idx].innerText = name; window.docs.collection.documentElement.selectNodes("body/a")[idx].text = name; }); break; case (active < 2 && name.length == 0): alert("请输入视频夹名称"); break; case (active == 2 && idx == 0) : alert("不能删除默认视频夹"); break; case (active == 2) && confirm("是否真地要删除选择地视频夹?"): xmlhttp.send("SetCollection.aspx", dat, function() { var body = window.docs.collection.documentElement.selectSingleNode("body"); body.removeChild(body.selectNodes("a")[idx]); var li = f.list.childNodes[idx]; var next = li; while(next = next.nextSibling) { next.nodeIndex -= 1; } if(f.list.selectedIndex == idx) { if(li.nextSibling) { li.nextSibling.className = "selected"; } else { li.previousSibling.className = "selected"; f.list.selectedIndex -= 1; } f.list.removeChild(li); f.list.onchange(); } else if(f.list.selectedIndex > idx) { f.list.removeChild(li); f.list.selectedIndex -= 1; } else { f.list.removeChild(li); } }); break; case (active == 3): if(title.length > 0 && href.length > 0) { var describe = f.elements["describe"].value.trim(); xmlhttp.send("SetCollection.aspx", dat + "&title=" + encodeURIComponent(title) + "&href=http://topic.csdn.net/u/20101023/10/" + encodeURIComponent(href) + "&describe=" + encodeURIComponent(describe), function() { var option = document.createElement("li"); f.item.appendChild(option); if(0 == (option.nodeIndex = f.item.childNodes.length – 1)) { option.className = "selected"; f.elements["edit"].disabled = f.elements["delete"].disabled = false; } else { f.item.childNodes[f.item.selectedIndex].className = ""; f.item.selectedIndex = option.nodeIndex; option.className = "selected"; } option.innerText = title; var node = f.dom.createElement("p"); var lk = f.dom.createElement("a"); lk.setAttribute("href", href); lk.text = title; node.appendChild(lk); var des = f.dom.createElement("p"); des.text = describe; node.appendChild(des); f.dom.documentElement.selectSingleNode("body").appendChild(node); }); } else { alert("必须输入标题和地址"); } break; case (active == 4): if(title.length > 0 && href.length > 0) { var describe = f.elements["describe"].value.trim(); var item = f.item.selectedIndex; xmlhttp.send("SetCollection.aspx", dat + "&item=" + item + "&title=" + encodeURIComponent(title) + "&href=http://topic.csdn.net/u/20101023/10/" + encodeURIComponent(href) + "&describe=" + encodeURIComponent(describe), function() { f.item.childNodes[item].innerText = title; with(f.dom.documentElement.selectNodes("body/p")[item]) { with(selectSingleNode("a")) { setAttribute("href", href); text = title; } selectSingleNode("p").text = describe; } }); } else { alert("必须输入标题和地址"); } break; case (active == 5): var item = f.item.selectedIndex; if(f.item.childNodes.length > 0) { xmlhttp.send("SetCollection.aspx", dat + "&item=" + item, function() { var body = f.dom.documentElement.selectSingleNode("body"); body.removeChild(body.selectNodes("p")[item]); if(f.list.selectedIndex == idx) { var li = f.item.childNodes[item]; var next = li; while(next = next.nextSibling) { next.nodeIndex -= 1; } if(f.item.selectedIndex == item) { if(li.nextSibling) { li.nextSibling.className = "selected"; f.item.onchange(); } else if(li.previousSibling) { li.previousSibling.className = "selected"; f.item.selectedIndex -= 1; f.item.onchange(); } else { f.elements["edit"].disabled = f.elements["delete"].disabled = true; } f.item.removeChild(li); } else if(f.item.selectedIndex > item) { f.item.removeChild(li); f.item.selectedIndex -= 1; } else { f.item.removeChild(li); } } }); } break; } },
好像是IE地缓存问题,你配置为false试试。
评论功能因故关闭!
请加入我们的QQ群一起参与讨论:群号59400482(500人超级群)
Copyright © 2007-2010 www.Chengxy.com All rights reserved
Powered by 王牌程序员
没听懂。
就是我先添加数据,然后把它关了,再去打开添加数据,但是我数据还在,没输出出来,我也不能添加数据
感觉像IE下地缓存问题加时间戳JScript code
xhr.open("GET","xxxxx.aspx?_dc="+new Date().getTIme(),true);///
贴代码吧
setCollection: function(f, active) { var idx = f.list.selectedIndex; var name = f.elements["name"].value.trim(); var title = f.elements["title"].value.trim(); var href = http://topic.csdn.net/u/20101023/10/f.elements"href".value.trim(); var xmlhttp = new HTTPRequest(); var dat = "active=" + active + "&idx=" + idx + "&name=" + encodeURIComponent(name) + "&collection=" + f.item.local; switch(true) { case (active == 0 && name.length > 0): xmlhttp.send("SetCollection.aspx", dat, function(r) { var option = document.createElement("li"); f.list.appendChild(option); option.className = "selected"; f.list.childNodes[f.list.selectedIndex].className = ""; f.list.selectedIndex = option.nodeIndex = f.list.childNodes.length – 1; option.innerText = name; var node = window.docs.collection.createElement("a"); node.setAttribute("href", r.getText()); node.text = name; window.docs.collection.documentElement.selectSingleNode("body").appendChild(node); f.list.onchange(); }); break; case (active == 1 && name.length > 0): xmlhttp.send("SetCollection.aspx", dat, function() { f.list.childNodes[idx].innerText = name; window.docs.collection.documentElement.selectNodes("body/a")[idx].text = name; }); break; case (active < 2 && name.length == 0): alert("请输入视频夹名称"); break; case (active == 2 && idx == 0) : alert("不能删除默认视频夹"); break; case (active == 2) && confirm("是否真地要删除选择地视频夹?"): xmlhttp.send("SetCollection.aspx", dat, function() { var body = window.docs.collection.documentElement.selectSingleNode("body"); body.removeChild(body.selectNodes("a")[idx]); var li = f.list.childNodes[idx]; var next = li; while(next = next.nextSibling) { next.nodeIndex -= 1; } if(f.list.selectedIndex == idx) { if(li.nextSibling) { li.nextSibling.className = "selected"; } else { li.previousSibling.className = "selected"; f.list.selectedIndex -= 1; } f.list.removeChild(li); f.list.onchange(); } else if(f.list.selectedIndex > idx) { f.list.removeChild(li); f.list.selectedIndex -= 1; } else { f.list.removeChild(li); } }); break; case (active == 3): if(title.length > 0 && href.length > 0) { var describe = f.elements["describe"].value.trim(); xmlhttp.send("SetCollection.aspx", dat + "&title=" + encodeURIComponent(title) + "&href=http://topic.csdn.net/u/20101023/10/" + encodeURIComponent(href) + "&describe=" + encodeURIComponent(describe), function() { var option = document.createElement("li"); f.item.appendChild(option); if(0 == (option.nodeIndex = f.item.childNodes.length – 1)) { option.className = "selected"; f.elements["edit"].disabled = f.elements["delete"].disabled = false; } else { f.item.childNodes[f.item.selectedIndex].className = ""; f.item.selectedIndex = option.nodeIndex; option.className = "selected"; } option.innerText = title; var node = f.dom.createElement("p"); var lk = f.dom.createElement("a"); lk.setAttribute("href", href); lk.text = title; node.appendChild(lk); var des = f.dom.createElement("p"); des.text = describe; node.appendChild(des); f.dom.documentElement.selectSingleNode("body").appendChild(node); }); } else { alert("必须输入标题和地址"); } break; case (active == 4): if(title.length > 0 && href.length > 0) { var describe = f.elements["describe"].value.trim(); var item = f.item.selectedIndex; xmlhttp.send("SetCollection.aspx", dat + "&item=" + item + "&title=" + encodeURIComponent(title) + "&href=http://topic.csdn.net/u/20101023/10/" + encodeURIComponent(href) + "&describe=" + encodeURIComponent(describe), function() { f.item.childNodes[item].innerText = title; with(f.dom.documentElement.selectNodes("body/p")[item]) { with(selectSingleNode("a")) { setAttribute("href", href); text = title; } selectSingleNode("p").text = describe; } }); } else { alert("必须输入标题和地址"); } break; case (active == 5): var item = f.item.selectedIndex; if(f.item.childNodes.length > 0) { xmlhttp.send("SetCollection.aspx", dat + "&item=" + item, function() { var body = f.dom.documentElement.selectSingleNode("body"); body.removeChild(body.selectNodes("p")[item]); if(f.list.selectedIndex == idx) { var li = f.item.childNodes[item]; var next = li; while(next = next.nextSibling) { next.nodeIndex -= 1; } if(f.item.selectedIndex == item) { if(li.nextSibling) { li.nextSibling.className = "selected"; f.item.onchange(); } else if(li.previousSibling) { li.previousSibling.className = "selected"; f.item.selectedIndex -= 1; f.item.onchange(); } else { f.elements["edit"].disabled = f.elements["delete"].disabled = true; } f.item.removeChild(li); } else if(f.item.selectedIndex > item) { f.item.removeChild(li); f.item.selectedIndex -= 1; } else { f.item.removeChild(li); } } }); } break; } },
好像是IE地缓存问题,你配置为false试试。