<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs" Inherits="PDMS.test" %><!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 id="form1" runat="server">
<div>
关键字:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<br />
显示查询关键字:<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="查询" OnClick="Button1_Click" /><br />
<br />
<a href="test.aspx?page=2">第二页</a> <a href="test.aspx?page=3">第三页</a></div>
</form>
</body>
</html>后台代码
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;namespace PDMS
{
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Label1.Text = ViewState["test"].ToString();
}
} protected void Button1_Click(object sender, EventArgs e)
{
ViewState["test"] = TextBox1.Text;
Label1.Text = ViewState["test"].ToString();
}
}
}这样会提示 未将对象引用设置到对象的实例。我的本意是想实现 输入关键字后 点查询,然后再点第二页,第三页,还能通过ViewState获取到输入的关键字.
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
关键字:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<br />
显示查询关键字:<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="查询" OnClick="Button1_Click" /><br />
<br />
<a href="test.aspx?page=2">第二页</a> <a href="test.aspx?page=3">第三页</a></div>
</form>
</body>
</html>后台代码
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;namespace PDMS
{
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Label1.Text = ViewState["test"].ToString();
}
} protected void Button1_Click(object sender, EventArgs e)
{
ViewState["test"] = TextBox1.Text;
Label1.Text = ViewState["test"].ToString();
}
}
}这样会提示 未将对象引用设置到对象的实例。我的本意是想实现 输入关键字后 点查询,然后再点第二页,第三页,还能通过ViewState获取到输入的关键字.
解决方案 »
- 谁有asp.net Repeater 查询出来的数据导出Excel的代码呀
- asp:ImageButton 所在地DIV 用javascript 移动到其他节点后, onclick 事件为何没有响应?
- ASP.NET 分页中的搜索条件以什么方式存储最好,cookies太麻烦
- 下载压缩文件.rar
- asp.net遍历HTML控件
- 菜鸟初学:由页面B的BUTTON触发,将页面B的某个值写入页面A的TEXTBOX控件,散分,谢谢!
- 调试出错后,把错误部分注释掉,再次调试还是显示那里有问题,怎么回事啊
- ASP.net2.0中,内容页如何获取子母版页的内容?
- 关于多人同时操作同一页面时的问题,请大虾帮忙!
- 为什么asp.net项目不在wwwwroot目录下面,就打不开呢?
- 鼠标移动到按扭触发音乐的问题
- 数据库的声明
{
ViewState["test"]="12345678910";
Label1.Text = ViewState["test"].ToString();
}
{
get{return ViewState["Test"]??string.Empty:ViewState["Test"].ToString();}
set{ViewState["Test"]=value;}
}
这样ViewState里的值就永远是你输入的 12345678910了
ViewState["test"] 没初始化 -> 未将对象引用设置到对象的实例
2.
viewstate 是页面级的 多看看书
3.
cache /session /?参数方式 代替
function go(obj)
{
obj.href= obj.href+escape("&keyword="+document.getElementById('<%=TextBox1.ClientID%>').value);
}Request.QueryString["keyword"]
还有一个办法,你就在本页绑定一个列表并且分页,也别跳转了,这样不就可以继续用本页的ViewState了么?
也没跑太远,还玩CSDN开心农场呢 ~ 就是没心思编码,就好久没来论坛了。