数据库表设计的时候,会有很些多状态的需求,比如招聘职位需要同时发布到武汉,广州,上海

实现方法有很多种,我选择了在职位表中建一个 int 型字段保存多种状态,这个涉及到一些算法,我要查询武汉和广州的职位的sql语句大概是这样:

select * from 职位表
where 1 = 1
and (status & power(2,3)) = power(2,3) --武汉
and (status & power(2,1)) = power(2,1) --广州

以下为相应的控件

<p><input type="text" multi_status="赛程,积分榜,射手榜,盘路,新闻" /></p>
<p><input type="text" multi_status="上海,广州,北京,武汉" /></p>
<p><input type="text" multi_status="审核,推荐,付款,删除" /></p> <script type="text/javascript" src="http://120.27.139.230:3000/distadmin/plugins/jQuery/jQuery-2.1.4.min.js"></script>
<script type="text/javascript">
var multi_status_count = 0;
$('input[multi_status]').each(function(index, el) {
el = $(el);
var status = el.attr('multi_status').split(',');
var val = el.val();
if (isNaN(parseInt(val, 10))) el.val(val = 0);
for (var a = 0; a < status.length; a++) {
var chkid = 'multi_status_checkbox_' + multi_status_count++;
var chk = $('<input type="checkbox" id="' + chkid + '"' +
((val & Math.pow(2, a)) == Math.pow(2, a) ? ' checked' : '') +
' onclick=""/><label for="' + chkid + '">' + status[a] + '</label>');
el.before(chk);
(function(a) {
$('#' + chkid).click(function() {
el.val(val = parseInt(val, 10) + (this.checked ? 1 : -1) * Math.pow(2, a));
});
})(a);
}
//if (status.length) el.hide();
});
</script>

jquery 现实多状态控件 (status & power(2,0)) = power(2,0)的更多相关文章

  1. jquery的上传控件uploadly,每行都有一个这样的控件对id选择器的使用

    1.先看看预览图 这个是我的页面,其中如果我没点击添加一行的时候,会把本来有的数据进行循环出来,这个时候每个记录都必须有个上传图片的按钮,但是jquery的uploadly这个控件只是锁定id的,至少 ...

  2. WPF自定义控件与样式(11)-等待/忙/正在加载状态-控件实现

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要有三种实现方式 ...

  3. jquery easyui datebox 时间控件默认显示当前日期的实现方法

    jquery easyui datebox 时间控件默认显示当前日期的实现方法 直接class easyui-datebox后添加一个value="true"就可以

  4. 为什么Jquery对input file控件的onchange事件只生效一次

    今天在做jquery对input file控件的onchange事件进行监听,就一直只生效一次,不知道Jquery为什么对file控件没有做到每次改变触发onchange事件的效果,但是还是有好几种解 ...

  5. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  6. Jquery获对HTML控件的控制

    Jquery获对HTML控件的控制 1.获取控件的值 1.1.radio 1.1.1 获取一组radio被选中项的值  var item = $('input[name=items][checked] ...

  7. jquery的智能提示控件

    福利到~分享一个基于jquery的智能提示控件intellSeach.js   一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管 ...

  8. 【转】WPF自定义控件与样式(11)-等待/忙/正在加载状态-控件实现

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等. 本文主要有三种实现方式: 简单忙碌状态控件BusyBox: Win8/win10效果忙 ...

  9. jquery检测input checked 控件是否被选中的方法

    jquery检测input checked 控件是否被选中 js部分 复制代码代码如下: function tongyianniu(){ var gouxuan=$('input[type=check ...

随机推荐

  1. ExtJs中xtype与组件类的对应表

    from:http://blog.163.com/jx_dream/blog/static/117056627201223091021410/ 核心提示:我们在使用 ExtJs 创建组件时最容易理解的 ...

  2. SharePoint 2013 JQuery Asset Picket

      var b = new AssetPickerConfig(""); b.ClientID = ""; b.DefaultAssetLocation = & ...

  3. English Training Material - 03

    Cross-cultural understanding (2) 1 The following text is about cultural diversity. Read it through o ...

  4. 迭代器iterator(三):Listlterator遍历arraylist,并用逆序输出结果

    迭代器(iterator) 是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址.迭代器修改了常规指针的接口,所谓迭代器是一种概 念上的抽象:那些行为上像迭 ...

  5. iOS 新窗口在最上层

    有的时候需要弹出一个UIView 在整个视图的最上方,使用 [self.view addsubview : view] 一般就可以了,但是这样不严谨,因为这是一个tableview,那么这个view ...

  6. Android文件操作

    将数据写入Internal Storage: String fileName = "myfile.txt"; String str="保存数据到内部存储"; t ...

  7. 关于android4.3 Intel X86 Atom System Image的下载

    今天建立android4.3模拟器的时候发现没有android4.3 Intel X86 Atom System Image可选,打开android SDK Manager 于是希望重现选择下载安装, ...

  8. C安全编码--整数理解

    建议和规则 建议: 理解编译器所使用的数据模型 使用rsize_t或size_t类型表示所有表示对象长度的整数值 理解整数转换规则 使用安全的整数库 对来自不信任来源的整数值实行限制 如果输入函数无法 ...

  9. Git学习 --> 个人常用命令add,commit以及push

    Git命令行配置1 安装Github2 安装msysgit3 要配置用户名和油箱  git config --global user.name <用户名> 我的命令就是:git confi ...

  10. 远程连接mysql容易遇到的2个问题

    1."com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The las ...