我最明白楼主意思了,楼主就是想不使用页面提交,来换得数据
最好的办法就是使用XMLHTTP路克<script>
function call(urlStr,theResult)
{
var objHTTP=new ActiveXObject("MSXML2.XMLHTTP");
with(objHTTP)
{
open("GET",urlStr,false);
onreadystatechange=function()
{
if(readyState==4)
{
if(status==200)
{
theResult.innerHTML=responseText;
}
}
}
try{
send();
}
catch(e)
{
theResult.innerHTML="Error: can not find data".fontcolor("red");
}
}
objHTTP=null;
}
</script>也就是你要专门写一个jsp(servlet)来获得数据
然后使用上面的script来获得结果不知道是不是楼主想要的效果

解决方案 »

  1.   

    <frameset rows="100%,*">
    <frame src=main.htm>
    <frame src=hidden.htm>
    </frameset>hidden.htm即为你先前的打开新窗口文件
      

  2.   

    先谢谢两位,明天试验一下,seabell(百合心) 你的方法我还不是很明白,我的想法应该是和 Yssss1980(浪子雪影)一样的,不知你的方法是否能实现!
      

  3.   

    Yssss1980(浪子雪影),你的方法好象不能执行啊!
    seabell(百合心),如何判断什么时候页面查询数据已经完成?
      

  4.   

    提交到servlet可以吗?不用再写一个页面,不过本页面会刷新~~~~~
      

  5.   

    seabell(百合心)大概是这个意思,放一个隐藏得ifame在本页,提交后返回本页就不会出现刷新现象了。
    <iframe name="if_1" id="if_1" height="1" width="30%" style="border:0;margin:0;padding:0;display:none">
    </iframe>
    <form name="f_GetProName" style="display:none" target="if_1" method="post" action="getProductName.jsp">
      <input type="hidden" name="sformname" value="">
      <input type="hidden" name="productSource" value="">
    </form>
    你试试吧,如果可以希望把代码放上来看看,我也想知道!
      

  6.   

    kaibinsj(天翔) 我明白了seabell(百合心)意思,不过我在试验的时候遇到一个新问题,就是如何判断查询已经结束?我如果用
    sreturn=window.showModalDialog("/jicha/yccg/jybj_nsrsbh.jsp?nsrsbh="+j_nsrsbh+"&rand="+randomNumber(),"","dialogWidth=0;dialogHeight=0;status:no;center:yes;help:no;minimize:no;maximize:no;border:thin;statusbar:no;close:no");
    if(sreturn=="null") alert("未找到该名称!");
    else form1.nsrmc.value=sreturn;
    就可以判断返回值,而用iframe如何在查询结束后传一个数值回来?我如果将查询结果放入session中,那么下次查询总是取出上次查询的结果(我用removeAttribute也不行)。我现在只能采用上边的这种做法了!
      

  7.   

    <frameset rows="100%,*">
    <frame name=main src=main.htm>
    <frame name=hidden src=hidden.jsp>
    </frameset>hidden.jsp
    top.main.document.form1.nsrmc.value=sreturn;