首页 新闻 会员 周边 捐助

请高手帮助:html页面用get方法向asp.net页面传值,开始正常,一段时间后就不正确了

0
悬赏园豆:30 [已解决问题] 解决于 2008-12-25 16:03

一、现实情况

  1.一个html页面,有一个输入关键字的文本框,当点击按钮时用JS把文本框里面的值传到一个asp.net页面,代码如下:

        <SCRIPT language=JavaScript>
            function GoUrl()
            {
              var txtKeyword = document.getElementById("txtKeyword").value;
              var obj = document.getElementById("tagOpenWin");
              var url = "http://www.aaa.com/bbb.aspx?txtKeyword="+escape(txtKeyword);  
              obj.href = url;  
              obj.click();  
            }
        </SCRIPT>

        <INPUT id="txtKeyword"  name="txtKeyword">
        <INPUT id="chaxun" onclick="GoUrl()" type="submit" value="查询" name="chaxun">
        <A id="tagOpenWin" target="_blank"></A>

  2.asp.net中的cs文件:

        protected void Page_Load(object sender, System.EventArgs e)
        {
            if(!Page.IsPostBack)
            {
                string keyword = Request.QueryString["txtKeyword"];
                Response.Write(keyword );
            }
        }

二、出现的问题

  1.文件刚传到服务时一切正常,用了一段时间后显示keyword 为空

  2.再把本地文件上传覆盖服务器上的文件后,就又正常了

 

三、希望高手帮忙

  1.分析原因

  2.解决办法 

问题补充: 会不会是缓存的问题,这个页面可以有参数打开,也可以不用参数打开
徐茂宾的主页 徐茂宾 | 初学一级 | 园豆:160
提问于:2008-12-11 16:58
< >
分享
最佳答案
0

<input id="chaxun" onclick="GoUrl()" checked="0" disabled="0" name="chaxun" readonly="0" type="submit" value="查询" />

这个不要用submit.用button

这应该是执行速度的问题~~什么结果取决于:GoUrl()与submit哪个快。。

BB_Coder | 小虾三级 |园豆:797 | 2008-12-12 10:11
其他回答(3)
0

如果function GoUrl()
            {
              var txtKeyword = document.getElementById("txtKeyword").value;
              var url = "http://www.aaa.com/bbb.aspx?txtKeyword="+escape(txtKeyword);  
              window.location.href=url;  
            }
是不是更好?

红尘中迷茫 | 园豆:60 (初学一级) | 2008-12-11 17:23
0

看一下新开的查询窗口的URL地址中有没有txtKeyword,或者txtKeyword=等,

或者不用那个link,使用js的window.open试试

GUO Xingwang | 园豆:3885 (老鸟四级) | 2008-12-11 17:35
0

问题

1、escape 最好换成encodeURIComponent

2、某些浏览器下链接是不存在click方法的。

5yplan | 园豆:1330 (小虾三级) | 2008-12-11 21:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册