下面时完整的代码和例子:
查看例子
selectmultipages.aspx
跨页面实现多选
* {font-size:12px}
#status {text-align:left}
function addremovevalues(ochk) {
//在处理这个地方需要注意的是:你保存的值应该具有唯一性,这样才能不会替换错误的项。
if(ochk.checked)
selectmultipage.hdnselectedvalues.value += "," + ochk.value;
else
selectmultipage.hdnselectedvalues.value = selectmultipage.hdnselectedvalues.value.replace("," + ochk.value,"");
}
selectmultipages.aspx.cs
using system;
using system.collections;
using system.componentmodel;
using system.data;
using system.data.oledb;
using system.drawing;
using system.web;
using system.web.sessionstate;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.htmlcontrols;
namespace emeng.exam
{
///
/// selectmultipages 的摘要说明。
///
public class selectmultipages : system.web.ui.page
{
protected system.web.ui.webcontrols.button button1;
protected system.web.ui.webcontrols.label label1;
protected system.web.ui.htmlcontrols.htmlinputhidden hdnselectedvalues;
protected system.web.ui.webcontrols.datagrid datagrid1;
private void page_load(object sender, system.eventargs e)
{
// 在此处放置用户代码以初始化页面
if(!page.ispostback)
binddata();
}
private void datagrid1_pageindexchanged(object source, datagridpagechangedeventargs e)
{
datagrid1.currentpageindex = e.newpageindex;
binddata();
}
void binddata()
{
oledbconnection cn = new oledbconnection("provider=microsoft.jet.oledb.4.0; data source="
+ httpcontext.current.server.mappath("aspx.mdb"));
oledbdataadapter da = new oledbdataadapter("select title, createdate from document",cn);
dataset ds = new dataset();
da.fill(ds);
datagrid1.datasource= ds;
datagrid1.databind();
}
private void datagrid1_itemdatabound(object sender, system.web.ui.webcontrols.datagriditemeventargs e)
{
//重新显示所选择的项目
if(e.item.itemtype == listitemtype.item || e.item.itemtype == listitemtype.alternatingitem)
{
if(hdnselectedvalues.value.indexof(((literal)e.item.cells[1].findcontrol("titleshow")).text) >= 0 )
{
htmlinputcheckbox chkselected = (htmlinputcheckbox)(e.item.cells[0].findcontrol("chkselect"));
chkselected.checked = true;
}
}
}
private void button1_click(object sender, system.eventargs e)
{
//为了显示的方便进行替换的
label1.text = hdnselectedvalues.value.replace(",","");
}
#region web 窗体设计器生成的代码
override protected void oninit(eventargs e)
{
//
// codegen: 该调用是 asp.net web 窗体设计器所必需的。
//
initializecomponent();
base.oninit(e);
}
///
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
///
private void initializecomponent()
{
this.datagrid1.itemdatabound +=
new system.web.ui.webcontrols.datagriditemeventhandler(this.datagrid1_itemdatabound);
this.datagrid1.pageindexchanged +=
new system.web.ui.webcontrols.datagridpagechangedeventhandler(this.datagrid1_pageindexchanged);
this.button1.click += new system.eventhandler(this.button1_click);
this.load += new system.eventhandler(this.page_load);
}
#endregion
}
}
注:IT公司速查网所有信息来自互联网