如1.aspx中有以下链接,想让它把当前页的textbox的值传到2.aspx中去搜索,如果办?
<a href="2.aspx" target="_blank">搜索</a>
注意一定要用a标签或HyperLink,主要是我想使用a标签的target="_blank"属性。 
有朋友解决了,用的是以下方法:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
无标题页
</title>
    <script language="javascript">
    
        function test()
        {
            var value = document .getElementById ("txt").value ;
            document .getElementById ("a").href = "2.aspx?id="+value ;
        }
    </script></head>
<body>
    <form name="Form1" method="post" action="default.aspx" id="Form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTM4NjAwMjE2OGRkDxTkRJH/w+VUv/vqIACFzzQYmDc=" />
</div>    <div>
        <a href="#" id="a" target="_blank" onclick ="test();">搜索</a>
        <input type ="text" id="txt" />
        
 <script language="javascript">
    
        function test()
        {
            var value = document .getElementById ("txt").value ;
            document .getElementById ("a").href = "2.aspx?id="+value ;
        }
    </script>
     <a href="#" id="a" target="_blank" onclick ="test();">搜索</a>
        <input type ="text" id="txt" />
    </div>    </form>
</body>
</html>非常感谢,可是在用户控件中使用却出错,如何办?
 

解决方案 »

  1.   

    TextBox 在用户控件中的 id 值不是 Textbox 的名称了,加了控件的前缀。可以使用 TextBox.ClientId 取得实际的 HTML 中的 ID 值。
      

  2.   

    若使用html控件就正常运行
    若使用asp.net控件 将ID改为:WebUserControl1_TextBox1
    其中WebUserControl1为用户控件的ID
      

  3.   

     function test()
      {
      var value = document .getElementById ("WebUserControl1_TextBox1").value ;
      document .getElementById ("a").href = "2.aspx?id="+value ;
      }
      

  4.   

    lz查看下源文件找到那个textbox就知道他的ID不是原来的ID了,一般在用户控件,母版页里面的服务器控id都变了
    用var value = document .getElementById ("<%=txt.ClientID%>").value ;
      

  5.   

    运行程序看下源文件,就知道该怎么用js取ID了
      

  6.   

    用户控件外层包围要加runat='server'