首先这是界面展示列:

当我点击更新操作后,效果如下:

其中所属区域的复选框为动态绑定,并且已为我们默认勾选了相关选项,具体操作如下:

前台代码:

<tr>
<td class="listTdLeft">所属区域:</td>
<td>
<asp:CheckBoxList ID="chklProvince" runat="server" RepeatDirection="Horizontal">
</asp:CheckBoxList>
</td>
</tr>

后台代码:

/// <summary>
/// 动态绑定省份复选框
/// </summary>
private void BindBoxProvince()
{
PagerSet pagerSet = FacadeManage.aidePlatformFacade.GetProvince(1, Int32.MaxValue, "", "ORDER BY ProvinceId ASC");
chklProvince.DataSource = pagerSet.PageSet;
chklProvince.DataValueField = "ProvinceId";
chklProvince.DataTextField = "ProvinceName";
chklProvince.RepeatDirection = RepeatDirection.Horizontal;
chklProvince.RepeatColumns = 10;
chklProvince.DataBind();
}

以上我们便能动态加载出所有的区域复选框,那么应该怎样才能在页面加载的时候把相关选项默认勾选中了,话不多说,直接上代码:

private void BindData()
{

//获取游戏实体信息
GameArea gameareaEntity = FacadeManage.aidePlatformFacade.GetGameAreaEnttiy(IntParam);
if (gameareaEntity == null)
{
ShowError("游戏信息不存在");
Redirect("GameAreaList.aspx");
return;
}
ddlGame.SelectedValue = gameareaEntity.GameId.ToString();
CtrlHelper.SetText(txtKindID, gameareaEntity.GameId.ToString());

//获取该游戏下对应的省份
SqlConnection conn = new SqlConnection("Server=***;DataBase=***;User ID=***;Password=***");
SqlCommand cmd = new SqlCommand();
SqlDataAdapter sda = new SqlDataAdapter();
conn.Open();
cmd.CommandText = string.Format("SELECT p.ProvinceId FROM dbo.GameArea g LEFT JOIN dbo.Province p ON p.ProvinceId = g.ProvinceId WHERE g.GameID={0}", IntParam);
cmd.Connection = conn;
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
DataSet ds = new DataSet();
sda.Fill(ds);
dt = ds.Tables[0];
conn.Close();
//循环绑定CheckBoxList选中项
if (chklProvince.Items.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
string provincenId = dt.Rows[i][0].ToString();
string[] temp = provincenId.Split(',');
foreach (string item in temp)
{
foreach (ListItem items in chklProvince.Items)
{
if (item == items.Value)//如果相等就选中
{
items.Selected = true;
}
}
}
}
}
}

操作并不难,主要是通过循环来绑定,首先获取该游戏下所属的省份ID,然后将其存为数组来循环遍历,当存在与checkboxlist项的集合中的值相等时,就勾选。

动态绑定CheckBoxList,并默认勾选多选框的更多相关文章

  1. ztree学习---将默认勾选的展开

    这里只给出前台页面上的代码,数据可以从后台获取,注意,在封装数据的时候,注意:Id(节点的id,可以是数字也可以是字符串) , pid(父亲节点的id) , name(节点名称)不能少 . html页 ...

  2. dedecms添加/编辑文章如何把附加选项去掉默认勾选状态

    1.去掉添加时默认勾选状态. 在 系统->系统基本参数->其它选项 中,如图中的三个选项选择否即可. 设置完后可以看到添加时已经默认不勾选,但是编辑文章时还是默认勾选状态. 2.去掉编辑时 ...

  3. EasyUI datagrid默认勾选checkbox时注意事项

    在使用easyui的datagrid默认选中复选框时遇到的一个问题:就是加载程序默认选中复选框时死活选不中,查了好多资料才知道是easyui的datagrid的singleSelect属性设置为‘tr ...

  4. java freemarker导出word时添加或勾选复选框

    最近项目导出word碰到一个需求,要求根据数据动态的决定word里的复选框是否勾选, 公司导出word用的是freemarker,相比较其他技术,freemarker可以很容易的控制输出样式, 在wo ...

  5. bootstrap-multiselect.js多选下拉框初始化时默认选中初始值

    bootstrap-multiselect.js多选下拉框默认值设置 一.案例数据格式  二.HTML代码 <select id="msgRoles" multiple=&q ...

  6. 基于JQ的多选/全选/反选及获取选中的值

    <!-- author:青芒 --> <!DOCTYPE html> <html lang="en"> <head> <met ...

  7. iOS开发-UITableView单选多选/复选实现1

    TableView怎样实现单选或者多选呢? 我们的直接思路是改动某一个Cell的样式就可以, 那么改动样式须要通过改动相应的数据, 从这里能够判断我们须要给Cell相应的数据设置一个标志位, 当选中的 ...

  8. 仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器,适配了iOS6-9系统,3行代码即可集成.

    提示:如果你发现了Bug,请尝试更新到最新版.目前最新版是1.6.4,此前的版本或多或少存在一些bug的~如果你已经是最新版了,请留一条评论,我看到了会尽快处理和修复哈~ 关于升级iOS10和Xcdo ...

  9. js:jquery multiSelect 多选下拉框实例

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. .NET Core使用AngleSharp网络数据采集

    环境: vs2019 .net core 3.1 angleSharp winform 安装:angleSharp 有这么一本Python的书: <<Python 网络数据采集>&g ...

  2. Java入门基础学习,成为一个Java程序员的必备知识

    引言 众所周知,Java是一种面向对象的编程语言.您可以在Windows操作系统上编写Java源代码,而在Linux操作系统上运行编译后的字节码,而无需修改源代码. 数据类型 Java 有 2 种数据 ...

  3. Python并发编程04 /多线程、生产消费者模型、线程进程对比、线程的方法、线程join、守护线程、线程互斥锁

    Python并发编程04 /多线程.生产消费者模型.线程进程对比.线程的方法.线程join.守护线程.线程互斥锁 目录 Python并发编程04 /多线程.生产消费者模型.线程进程对比.线程的方法.线 ...

  4. 安卓移动端line-height垂直居中出现偏移的解决方法

    目前移动端在项目使用的rem,安卓手机上line-height属性,让它的值等于height,结果发现是不居中的. 出现此问题的原因是Android在排版计算的时候参考了primyfont字体的相关属 ...

  5. day5:isinstance&代码块&分支&while循环

    1.判断类型 isinstance语法:用法一: isinstance(要判断的值,要判断的类型) 返回True 或者 False用法二: isinstance(要判断的值,(可能的类型1,可能的类型 ...

  6. PHP实现多继承

    题问php是否支持多继承? 答案:不可以,只支持单继承. 如何实现多继承呢? 答案:可以使用 interface 或 trait 实现 . interface这里我们就不做过多的说明了,它的原理就是一 ...

  7. 三、Python系列——Pandas数据库读取数据

    Pandas主要先读取表格类型的数据,然后进行分析. import pandas as pd# 由于是用pandas模块操作数据,因此不用在路径前加open,否则就是python直接打开文件,可能还会 ...

  8. Python Ethical Hacking - BACKDOORS(2)

    Refactoring - Creating a Listener Class #!/usr/bin/env python import socket class Listener: def __in ...

  9. 因为mac不支持移动硬盘的NTFS格式,mac电脑无法写入移动硬盘的终极解决办法

    相信很多实用mac的同学,都有磁盘容量问题,所以才使用移动硬盘 当移动硬盘在windows电脑上使用过之后,会被格式化为NTFS格式 而mac电脑不支持NTFS格式 这里有两种方法 第一种是把移动硬盘 ...

  10. 【Python学习笔记六】获取百度搜索结果以及百度返回“百度安全验证”问题解决

    1.获取百度搜索结果页面主要是修改百度搜索url中的参数实现,例如查询的关键字为wd: 举例:https://www.baidu.com/s?wd=python",这样就可以查询到‘pyth ...