分页 条件丢失 直接在浏览器地址栏键入a标签的地址,会丢失么?检查你的服务器代码怎么处理QueryString的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你是get方式?你后台的querystring得到的是什么? if (Request.QueryString["pagenum"] != null) { pagenum = Convert.ToInt32(Request.QueryString["pagenum"]); } else { pagenum = 1;//默认打开第一页 } BindData(pagenum); 然后我在BindData里有个查询输入条件的方法,可是点击上一页和下一页的时候因为那些下拉框都重置了,所以不管以前的通过什么条件筛选出来的数据,查出来的数据总是select * 的数据,不带条件了,急啊! 在URL里加上参数条件,分页时带上参数 if (Request.QueryString["条件1"] != null){ tiaojian1 = Convert.ToInt32(Request.QueryString["条件1"]); }else { tiaojian1 = "";}if (Request.QueryString["条件2"] != null){ tiaojian2 = Convert.ToInt32(Request.QueryString["条件2"]); }else { tiaojian2 = "";}BindData(pagenum,tiaojian1,tiaojian2);这些查询条件也得带上啊 感谢大家的帮助,我把条件参数放到url后面的时候,点击下一页后,只能用一次,然后那些下拉框就又初始化了,所以这个方法是一次性的,我不知道是我写的有问题,还是这种方式根本就不好,新手,求解啊 所以你要用ajax去搞分页,不然的话 点页码后页面重新载入 那么当然你的那些下拉框 当然会初始化啦。1、页面的分页 使用jquery插件或者你自己写2、如果你分页的时候能传别的参数 那么你可以把你的下拉框的条件放到你的参数里 后台根据参数得到具体的分页信息同时页面加载后把下拉框的值定为你参数里的值. <a href="javascript:putCondition('SearchContent.aspx?pagenum=1');">第一页</a> <a href="javascript:putCondition('SearchContent.aspx?pagenum=<%=currentpage-1 %>')">上一页</a> <a href="javascript:putCondition(' SearchContent.aspx?pagenum=<%=currentpage+1 %>')">下一页</a> <a href="javascript:putConditon('SearchContent.aspx?pagenum=<%=pageAllNum %>')">最后一页</a> function putCondition(url) { var cat1 = $("#<%=cat1.ClientID %>").get(0).selectedIndex; var cat2 = $("#<%=cat2.ClientID %>").get(0).selectedIndex; var createUser = $("#<%=createUser.ClientID %>").get(0).selectedIndex; var dutyUser = $("#<%=dutyUser.ClientID %>").get(0).selectedIndex; var level = $("#<%=level.ClientID %>").get(0).selectedIndex; var statusFlg = $("#<%=statusFlg.ClientID %>").get(0).selectedIndex; conditions = "&cat1=" + cat1; conditions += "&cat2=" + cat2; conditions += "&createUser=" + createUser; conditions += "&dutyUser=" + dutyUser; conditions += "&level=" + level; conditions += "&statusFlg=" + statusFlg; alert(url + "" + conditions); location.href = url + "" + conditions; }//因为每次加载的时候条件都清空了,所以放到url里作为参数传过来 int cat1Index= Convert.ToInt32( Request .QueryString["cat1"]); int cat2Index = Convert.ToInt32(Request.QueryString["cat2"]); int createUserIndex = Convert.ToInt32(Request.QueryString["createUser"]); int dutyUserIndex = Convert.ToInt32(Request.QueryString["dutyUser"]); int statusFlgIndex = Convert.ToInt32(Request.QueryString["statusFlg"]); int levelIndex = Convert.ToInt32(Request.QueryString["level"]); Models.Content model = new Models.Content() { PARENTCATPKNO = cat1Index==0?0:Convert.ToInt32( cat1.Items[cat1Index].Value), CHILDCATPKNO = cat2Index == 0 ? 0 : Convert.ToInt32(cat2.Items[cat2Index].Value), CREATEUSERPKNO = createUserIndex == 0 ? 0 : Convert.ToInt32(createUser.Items[createUserIndex].Value), DUTYUSERPKNO = dutyUserIndex == 0 ? 0 : Convert.ToInt32(dutyUser.Items[dutyUserIndex].Value), LEVELFLG = statusFlgIndex == 0 ? "" : statusFlg.Items[statusFlgIndex].Value, STATUSFLG = levelIndex == 0 ? "" : level.Items[levelIndex].Value };//然后把model作为参数传到数据访问层,查数据 个人觉得URL跳转来做分页效果不可取,光为了这样一个功能,还得重新加载页面使用ajax等吧 我晕 你点击页码的时候 你的页面不是跳转的么?而且你也带了参数 那么你可以写上为条件赋值的语句啊。可以放在:$(document).ready(function(){ //获取地址栏的参数值 有的话 则为条件的下拉框赋值.});在说这种方法确实不好 现在jquery的分页插件还是不错的 咋不用分页插件呢? 根据QueryString取到的参数去重新设置那些下拉框当前选择的值啊 在研究这个网站。是啥技术做得?求教一下!! 在其他页上删除登录时记录的cookie,怎么做呢 为什么编译提示使用了未赋值的局部变量 .net下如何如何调用js函数? 请教各位大侠不能在javascript中嵌套一个写好的方法吗????? 强制页面刷新,当Session丢失的时候 网站被攻击,到底是怎么回事?如何防范! 包含Index.Of()的SQL语句怎么写!? 怎样使用"MsgBox"函数?? 关于VS.net版本问题。 如何根据选择的日期,自动生成年龄,然后写入数据库 同张表增删没问题,但无法修改
{
pagenum = Convert.ToInt32(Request.QueryString["pagenum"]); }
else
{
pagenum = 1;//默认打开第一页
}
BindData(pagenum);
{
tiaojian1 = Convert.ToInt32(Request.QueryString["条件1"]);
}
else
{
tiaojian1 = "";
}if (Request.QueryString["条件2"] != null)
{
tiaojian2 = Convert.ToInt32(Request.QueryString["条件2"]);
}
else
{
tiaojian2 = "";
}BindData(pagenum,tiaojian1,tiaojian2);这些查询条件也得带上啊
1、页面的分页 使用jquery插件或者你自己写
2、如果你分页的时候能传别的参数 那么你可以把你的下拉框的条件放到你的参数里 后台根据参数得到具体的分页信息
同时页面加载后把下拉框的值定为你参数里的值.
<a href="javascript:putCondition('SearchContent.aspx?pagenum=<%=currentpage-1 %>')">上一页</a>
<a href="javascript:putCondition(' SearchContent.aspx?pagenum=<%=currentpage+1 %>')">下一页</a>
<a href="javascript:putConditon('SearchContent.aspx?pagenum=<%=pageAllNum %>')">最后一页</a> function putCondition(url) {
var cat1 = $("#<%=cat1.ClientID %>").get(0).selectedIndex;
var cat2 = $("#<%=cat2.ClientID %>").get(0).selectedIndex;
var createUser = $("#<%=createUser.ClientID %>").get(0).selectedIndex;
var dutyUser = $("#<%=dutyUser.ClientID %>").get(0).selectedIndex;
var level = $("#<%=level.ClientID %>").get(0).selectedIndex;
var statusFlg = $("#<%=statusFlg.ClientID %>").get(0).selectedIndex;
conditions = "&cat1=" + cat1;
conditions += "&cat2=" + cat2;
conditions += "&createUser=" + createUser;
conditions += "&dutyUser=" + dutyUser;
conditions += "&level=" + level;
conditions += "&statusFlg=" + statusFlg;
alert(url + "" + conditions);
location.href = url + "" + conditions;
}//因为每次加载的时候条件都清空了,所以放到url里作为参数传过来
int cat1Index= Convert.ToInt32( Request .QueryString["cat1"]);
int cat2Index = Convert.ToInt32(Request.QueryString["cat2"]);
int createUserIndex = Convert.ToInt32(Request.QueryString["createUser"]);
int dutyUserIndex = Convert.ToInt32(Request.QueryString["dutyUser"]);
int statusFlgIndex = Convert.ToInt32(Request.QueryString["statusFlg"]);
int levelIndex = Convert.ToInt32(Request.QueryString["level"]);
Models.Content model = new Models.Content()
{
PARENTCATPKNO = cat1Index==0?0:Convert.ToInt32( cat1.Items[cat1Index].Value),
CHILDCATPKNO = cat2Index == 0 ? 0 : Convert.ToInt32(cat2.Items[cat2Index].Value),
CREATEUSERPKNO = createUserIndex == 0 ? 0 : Convert.ToInt32(createUser.Items[createUserIndex].Value),
DUTYUSERPKNO = dutyUserIndex == 0 ? 0 : Convert.ToInt32(dutyUser.Items[dutyUserIndex].Value),
LEVELFLG = statusFlgIndex == 0 ? "" : statusFlg.Items[statusFlgIndex].Value,
STATUSFLG = levelIndex == 0 ? "" : level.Items[levelIndex].Value
};//然后把model作为参数传到数据访问层,查数据
可以放在:
$(document).ready(function(){
//获取地址栏的参数值 有的话 则为条件的下拉框赋值.
});在说这种方法确实不好 现在jquery的分页插件还是不错的 咋不用分页插件呢?
根据QueryString取到的参数去重新设置那些下拉框当前选择的值啊