我主要用了3种传值办法,我要将我需要的值放在一个文本框text里
<a href>,<asp:HyperLink>,<asp:LinkButton>
第一种 <a href="页面?id="+后面如何加这个文本框呢?>,我用<%=document.getElementById("TextBox1").value%>这样不对
第二种 <asp:HyperLink>
aspx
<asp:HyperLink ID="HyperLink1" runat="server" Style="z-index: 152; left: 311px; position: absolute;
top: 205px" >HyperLink</asp:HyperLink>
cs
this.HyperLink1.NavigateUrl = "Message.aspx?par=" + this.TextBox1.Text;
跳传的页面cs
protected void Page_Load(object sender, EventArgs e)
{
this.nameTextBox1.Text = string.Format("{0}", Request.QueryString["par"].ToString());
}
可是接不到传过来par的值
第三种 <asp:LinkButton>
cs
url = "Message.aspx?par=" + this.TextBox1.Text;
Response.Write("<script>window.open('" + url + "');</script>");
原来的页面刷新了,我不想刷新该怎么办?
还请高手帮忙解决一下以上3个问题,成功解决立即给分。
<a href>,<asp:HyperLink>,<asp:LinkButton>
第一种 <a href="页面?id="+后面如何加这个文本框呢?>,我用<%=document.getElementById("TextBox1").value%>这样不对
第二种 <asp:HyperLink>
aspx
<asp:HyperLink ID="HyperLink1" runat="server" Style="z-index: 152; left: 311px; position: absolute;
top: 205px" >HyperLink</asp:HyperLink>
cs
this.HyperLink1.NavigateUrl = "Message.aspx?par=" + this.TextBox1.Text;
跳传的页面cs
protected void Page_Load(object sender, EventArgs e)
{
this.nameTextBox1.Text = string.Format("{0}", Request.QueryString["par"].ToString());
}
可是接不到传过来par的值
第三种 <asp:LinkButton>
cs
url = "Message.aspx?par=" + this.TextBox1.Text;
Response.Write("<script>window.open('" + url + "');</script>");
原来的页面刷新了,我不想刷新该怎么办?
还请高手帮忙解决一下以上3个问题,成功解决立即给分。
解决方案 »
- 请教如何更改控件输出的html的id和name属性
- Asp.net 做成网站URL伪静态显示
- DataSet 中的 Relations 建立关系后得不到数据。大虾帮忙
- 求问
- Taokee.com寻人启事
- 用批处理考备文件到服务器上,并把用户名和密码写到批处理去,不用要求输入用户名和密码
- DataGrid数据绑定的问题,比较特殊,请帮忙.
- 怎么读取xml文件里面的数据?急!!!
- 能不能在同一个表中的不同字段建立父子关系???
- 为什么提示:类型“TextBox”的控件“text1”必须放在具有 runat=server 的窗体标记内。
- 身份验证的问题
- asp.net验证控件如何分区域性进行验证 ~~急!!!
第二个,this.HyperLink1.NavigateUrl = "Message.aspx?par=" + this.TextBox1.Text;
你写的位置不对,估计写在了page load里,用hyperlink不太好处理,不建议用。它主要处理不是从界面获取的数据。如果是需要动态从ui取值,请用LinkButton
第三个,这是asp.net的机制决定的,要不刷新,请使用AJAX等方式。或者采用第一种方式
这个改成这样试看this.nameTextBox1.Text = Request.QueryString["par"].ToString(); 第三种 要想不刷新不能因为服务器控件最大的特点就是要回传 所以不刷新不可能
要不刷新采用第一种JS onclick="javascrip:window.location.href('xxx.aspx?id=xxx')"
<a href="javascript:window.location='页面?id='+document.getElementById('<%=TextBox1.ClientID%>').value;">xxxx </a>
left: 294px; position: absolute; top: 134px;" target="_blank">33333333333</a>
第二改成
<a href="javascript:window.open('Message.aspx?par='+document.getElementById('<%=TextBox1.ClientID%>').value)" style="z-index: 150; cursor:hand;left: 294px; position: absolute; top: 134px;">33333333333 </a>
<!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 runat="server">
<title></title>
</head>
<body>
<form runat="server">
<a href="javascript:window.open('Message.aspx?par='+document.getElementById(' <%=TextBox1.ClientID%>').value)" style="z-index: 150; cursor:hand;left: 294px; position: absolute; top: 134px;">33333333333 </a>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</form>
</body>
</html>这样运行是有错误的!!!!当我改成下面这样的时候
<a href="javascript:window.open('Message.aspx?par='+document.getElementById('TextBox1').value)" style="z-index: 150; cursor:hand;left: 294px; position: absolute; top: 134px;">33333333333 </a>
弹出新页面了,可是原来的页面留下了[objest],用js不是不应该刷新吗?
<a onclick="javascript:window.open('Message.aspx?par='+document.getElementById(' <%=TextBox1.ClientID%>').value)">xxx</a>
如果用onclick,那么需要再加一个href="#",否则连接不会显示出连接的样子