提交数据,提取时错误!

gzc214 2008-02-19 01:01:37
提交数据时,数据库里得到数据,提取时发生错误,必须关闭网页重新打开才能显示数据,求高手提示!!
下面时提取数据时用到的代码:
<select name="brand_id" size="8" style="width:350;" class="input-select" id="brand_id" onChange="loadSeries(this.options[this.selectedIndex].value);">
</select>

<select name="cartypeList" class="input-select" id="cartypeList" onChange="this.form.newcartype.value=this.options[this.selectedIndex].text;">
</select>

function loadSeries(bid)
{
series.src="/xml/Serial_xml.asp?brand="+bid;
//alert(series.src)
}

下面是Serial_xml.asp文件里的代码:

<!--#include virtual="/inc/DBconn.asp" -->
<%
brand=trim(request("brand"))

response.write "<?xml version='1.0' encoding='GBK' ?>"&chr(13)
response.write "<系列列表>"&chr(13)
if len(brand)=6 then
set rs= Server.CreateObject("adodb.recordset")
sql="select id,cartype from t_cars_type where left(id,6)='"&brand&"' order by cartype asc"

rs.open sql,conn,1,1
response.write "<系列数量>"&rs.recordcount&"</系列数量>"&chr(13)
do while not rs.eof
response.write "<系列 text="""&rs(1)&""" value="""&rs(0)&""" />"&chr(13)
rs.movenext
loop
rs.close
set rs=nothing
end if
response.write "</系列列表>"&chr(13)
closeConn
%>

...全文
134 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
我算是服了,好多都是不认真看别人的回帖的
!一开始就告诉用随机数,防止缓存问题了
  • 打赏
  • 举报
回复
汗!你现在才知道加个随机数??晕!一开始就告诉你要加一个随机数了!你到现在还象棋这个?
gzc214 2008-02-23
  • 打赏
  • 举报
回复
谢谢 iloveC#的提示,问题解决了 在series.src的连接地址加个随机数,让传入的路径总在变化就好了,也感谢其他的热心回答!
  • 打赏
  • 举报
回复
当然跟缓存有问题,假如你不加一个防止缓存的参数,往往会造成那现象
Go 旅城通票 2008-02-20
  • 打赏
  • 举报
回复
function loadSeries(bid) 
{
//series是iframe??那你的initDoubleLevelSelect函数怎么使用返回的xml的?
series.src="/xml/Serial_xml.asp?brand="+bid+"×tamp="+escape(new Date().toString());
//最好加个防止缓存的参数,要不同一个bid会缓存.和ajax一样
}

gzc214 2008-02-20
  • 打赏
  • 举报
回复
有评论说是什么缓存问题的 但看代码好象跟缓存没有什么关系啊
gzc214 2008-02-19
  • 打赏
  • 举报
回复
还是不行,看看还有什么高招不~?
Go 旅城通票 2008-02-19
  • 打赏
  • 举报
回复
Serial_xml.asp

你js分析的是xml,所以设置响应头为text/xml试试
gzc214 2008-02-19
  • 打赏
  • 举报
回复
楼上的 发布出来的代码是往哪个文件里传
Go 旅城通票 2008-02-19
  • 打赏
  • 举报
回复
<!--#include   virtual="/inc/DBconn.asp"   --> 
<%
brand=trim(request("brand"))
response.ContentType="text/xml"'========加个头试试
response.write " <?xml version='1.0' encoding='GBK' ?> "&chr(13)
response.write " <系列列表> "&chr(13)
'===原来的代码===
gzc214 2008-02-19
  • 打赏
  • 举报
回复
这个是JS文件里的代码:
function initDoubleLevelSelect(selObj1,selObj2,xmlIsland,rootPath,parentNodeName,indexVal,kidNodeName,initVal)
{
var rootNode=xmlIsland.XMLDocument.selectSingleNode(rootPath)
var categories=rootNode.selectNodes(parentNodeName);
for (var i=0;i<categories.length;i++)
{
var category=categories[i];
var text=category.getAttribute("text");
var value=category.getAttribute("value");
selObj1.add(new Option(text,value));
}
for (var i=0;i<selObj1.length;i++)
{
if (selObj1[i].value==indexVal)
{
selObj1[i].selected=true;
break;
}
}
selObj1["subSelectObj"]=selObj2;
selObj1["xmlCategoryNode"]=categories;
selObj1["kidNodeName"]=kidNodeName;
selObj1.onpropertychange=changeCategory;
selObj1.onpropertychange();
for (var i=0;i<selObj2.length;i++)
{
if (selObj2[i].value==initVal)
{
selObj2[i].selected=true;
break;
}
}
}

function changeCategory()
{
var subSelObj=this.subSelectObj;
var categories=this.xmlCategoryNode;
var subOptionNodeName=this.kidNodeName;
subSelObj.length=0;
for (var i=0;i<categories.length;i++)
{
var category=categories[i];
if(category.getAttribute("value")==this[this.selectedIndex].value)
{
var subs=category.selectNodes(subOptionNodeName);
for(var j=0;j<subs.length;j++)
{
var subcate=subs[j];
var subText=subcate.getAttribute("text");
var subVal =subcate.getAttribute("value");
subSelObj.add(new Option(subText,subVal));
}
break;
}
}
}

function initSelect(selObj,xmlIsland,nodePath,optionNodeName,initVal)
{
var xmlNode=xmlIsland.XMLDocument.selectSingleNode(nodePath);
initSelectFromXMLNode(selObj,xmlNode,optionNodeName,initVal);
}

function initSelectFromXMLNode(selObj,xmlNode,optionNodeName,initVal)
{
selObj.length=0;
var opts=xmlNode.selectNodes(optionNodeName);
for (var i=0;i<opts.length;i++)
{
var optionText=opts[i].getAttribute("text");
var optionValue=opts[i].getAttribute("value");
var opt=new Option(optionText,optionValue);
selObj.add(opt);
}
for (var i=0;i<selObj.length;i++)
if(selObj[i].value==initVal)selObj[i].selected=true;
}
gzc214 2008-02-19
  • 打赏
  • 举报
回复
谢谢热心的回答 没有错误提示,楼上的方法我试过 还是不行
littlelam 2008-02-19
  • 打赏
  • 举报
回复

function loadSeries(bid)
{
document.getElementById("series").src="/xml/Serial_xml.asp?brand="+bid+ "&.tmp=" + Math.random();
//alert(series.src)
}
littlelam 2008-02-19
  • 打赏
  • 举报
回复

function loadSeries(bid)
{
document.getElementById("series").src="/xml/Serial_xml.asp?brand="+bid+ "&.tmp=" + Math.random;
//alert(series.src)
}
littlelam 2008-02-19
  • 打赏
  • 举报
回复

function loadSeries(bid)
{
series.src="/xml/Serial_xml.asp?brand="+bid+ "&.tmp=" + Math.random;
//alert(series.src)
}
MikeCheers 2008-02-19
  • 打赏
  • 举报
回复
在你的js回调函数中 alert(xmlObj.responseXml) xmlObj是你的xml http request 对象 看看返回的数据是否正常

最好将js代码贴出来 才好分析问题
beyondamane 2008-02-19
  • 打赏
  • 举报
回复
错误报告贴 出来
  • 打赏
  • 举报
回复
你做的不是无刷新提交吧?没发现你有返回信息

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧