实例:

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.jeditable.mini.js"></script><!-- multiselect -->
<script type="text/javascript" src="jquery.jeditable.multiselect.js"></script><!-- multiply checkboxes -->
<script type="text/javascript" src="jquery.jeditable.checkboxes.js"></script><script>
$(function()
{$('.checkboxes').editable('save.php', {data            : " {'E':'Letter E','F':'Letter F','G':'Letter G'}",type            : 'multi_checkboxes',wrapper_class   : 'checkboxes',checkboxed      : "['G', 'F']",checkbox_name   : 'boxes',submit : "OK",cancel : "Cancel",onblur : "cancel",submitdata : function(value,setting) { return { select : array2str($(this).find('span').find('input[type=checkbox]:checked')) }; },callback : function(value, settings) { $(this).text(value); },});$('.multiselect').editable('save.php', { data   : " {'E':'Letter E','F':'Letter F','G':'Letter G', 'selected':'F'}",type   : 'multiselect',submit : 'OK'});
});
</script><div style="border:red 1px solid;" class="checkboxes"> checkboxes !</div>
<div style="border:red 1px solid;" class="checkboxes"> checkboxes !</div><div style="border:red 1px solid;" class="multiselect"> multiselect !</div>

save.php

<?phpecho $_POST['select'].',';

jquery.jeditable.multiselect.js

/** multiselect for Jeditable** Copyright (c) 2008 Mika Tuupola** Licensed under the MIT license:*   http://www.opensource.org/licenses/mit-license.php* * Depends on Autogrow jQuery plugin by Chrys Bader:*   http://www.aclevercookie.com/facebook-like-auto-growing-textarea/** Project home:*   http://www.appelsiini.net/projects/jeditable** Revision: $Id$**/$.editable.addInputType("multiselect", {element: function (settings, original) {var select = $('<select multiple="multiple" />');if (settings.width != 'none') { select.width(settings.width); }if (settings.size) { select.attr('size', settings.size); }$(this).append(select);return (select);},content: function (data, settings, original) {/* If it is string assume it is json. */if (String == data.constructor) {eval('var json = ' + data);} else {/* Otherwise assume it is a hash already. */var json = data;}for (var key in json) {if (!json.hasOwnProperty(key)) {continue;}if ('selected' == key) {continue;}var option = $('<option />').val(key).append(json[key]);$('select', this).append(option);}if ($(this).val() == json['selected'] ||$(this).html() == $.trim(original.revert)) {$(this).attr('selected', 'selected');}/* Loop option again to set selected. IE needed this... */$('select', this).children().each(function () {if (json.selected) {var option = $(this);$.each(json.selected, function (index, value) {if (option.val() == value) {option.attr('selected', 'selected');}});} else {if (original.revert.indexOf($(this).html()) != -1)$(this).attr('selected', 'selected');}});}
});

jquery.jeditable.checkboxes.js

/** checkboxes input for Jeditable** Copyright (c) 2013- by Gideon** Licensed under the MIT license:*   http://www.opensource.org/licenses/mit-license.php* * Revision: $Id$**/$.editable.addInputType("multi_checkboxes", {element: function (settings, original) {var $wrapper = $('<span class="'+settings.wrapper_class+'" />');$(this).append($wrapper);return ($wrapper);},content: function (data, settings, original) {/* If it is string assume it is json. */if (String == data.constructor) eval('var json = ' + data);/* Otherwise assume it is a hash already. */else var json = data;for (var key in json) {if (!json.hasOwnProperty(key)) continue;if ('checked' == key) continue;//alert(key); alert(json[key]);var $checkbox = $('<input type="checkbox" name="'+settings.checkbox_name+'[]">').val(key).after(json[key]);$('.'+settings.wrapper_class, this).append($checkbox);}if ($(this).val() == json['checked'] || $(this).html() == $.trim(original.revert)) $(this).attr('checked', 'checked');/* Loop $checkbox again to set checked. IE needed this... */$('.'+settings.wrapper_class, this).children().each(function () { if (in_array($(this).val(),settings.checkboxed)) $(this).attr('checked', 'checked'); });}});function in_array (needle, haystack, argStrict) {var key = '', strict = !! argStrict;if (strict) { for (key in haystack) { if (haystack[key] === needle) return true; } } else { for (key in haystack) { if (haystack[key] == needle) return true; } }return false;}function array2str($obj){var $array = new Array();$obj.each(function(){ $array.push($(this).val()); });return $array.join(','); alert($str);}

本文地址:http://justcoding.iteye.com/blog/1994162

jquery jeditable 多选插件 (checkbox or select)相关推荐

  1. jQuery Mobile中复选框checkbox的data-*选项

    全栈工程师开发手册 (作者:栾鹏) jQuery Mobile 所有data-*选项 jQuery Mobile中复选框checkbox的data-*选项 带有 type="checkbox ...

  2. JQuery实现复选框CheckBox的全选、反选、提交操作

    对复选框最基本的应用,就是对复选框进行全选.反选和提交等操作.复杂的操作需要与选项挂钩,来达到各种级联反应效果. [示例]使用Jquery实现复选框CheckBox的全选.反选.提交操作. (1)创建 ...

  3. jQuery操作复选框checkbox技巧总结 ---- 设置选中、取消选中、获取被选中的值、判断是否选中等

    jQuery操作复选框checkbox技巧总结 --- 设置选中.取消选中.获取被选中的值.判断是否选中等 一.checked属性定义 先了解下input标签的checked属性: 1.HTML &l ...

  4. java 单选下拉_jQuery对单选框radio,复选框checkbox,下拉列表select的操作

    获取一组radio被选中项的值var item = $('input[@name=items][@checked]').val(); 获取select被选中项的文本var item = $(" ...

  5. js,jquery获取复选框checkbox被选中的值

    转载:https://blog.csdn.net/qq_35792598/article/details/76646983 <!DOCTYPE html PUBLIC "-//W3C/ ...

  6. jquery获取复选框checkbox被选中的值

    获取复选框基本操作 html代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "h ...

  7. 锋利的jQuery-3--用js给多选的checkbox或者select赋值

    单选的select: <select id="single"><option>Single</option><option>Sing ...

  8. js、jquery操作复选框checkbox总结(单个/多个获取选中值、初始化设置默认选中值、全选反选)

    一.单个复选框 使用label标签可以点击文字就能选中复选框或者是取消选择复选框 label标签的两种使用方法:   https://blog.csdn.net/qq_40015157/article ...

  9. jquery操作复选框(checkbox)的12个小技巧总结

    1.获取单个checkbox选中项(三种写法)$("input:checkbox:checked").val() 或者 $("input:[type='checkbox' ...

最新文章

  1. 建筑师——由来已久的梦想
  2. P9 线性系统状态空间分析-《Matlab/Simulink与控制系统仿真》程序指令总结
  3. Linux系统入门之如何安装Linux系统
  4. 最后一块石头的重量II
  5. 填坑利器?Redis如何弥补传统MySQL架构的不足
  6. python之异常处理_Python之异常处理
  7. n型半导体和p型半导体的区别_PNP和NPN的区别和判别方法,网友:太厉害了!终于有人能讲明白了...
  8. Github图片加速心得
  9. 【转】关于维生素的那些事
  10. r roc函数_如何处理R(pROC包)中的多类ROC分析?
  11. Java String 类的方法
  12. axure图表组件。echarts。 axure !important 二维码logo嵌入axure汉化美化定制。图表背景透明
  13. Blazeds文档(二)-------Blazeds体系结构(一)【转载】
  14. 遗传算法(一) 遗传算法的基本原理
  15. NXP TJA1040, TJA1042, TJA1050 TJA1051, TJA1057, TJA1044, TJA1055区别
  16. 【《Real-Time Rendering 3rd》 提炼总结】(五) 第六章 · 纹理贴图及相关技术 The Texturing
  17. Redis+Zookeeper+NIO+JVM+Dubbo+mq+Kafka+ElasticSearch+POI相关面试题
  18. 网页被劫持跳转怎么办?发布网修复方法
  19. 如何用 Python 自动发送微博?
  20. Python/Numpy 合并复数的实部和虚部

热门文章

  1. 字符串的展开(洛谷-P1098)
  2. 信息学奥赛C++语言:火柴盒
  3. 14 对于移动类型561和账户xxxxxx Ext. GA本币计的金额(023)的不同的字段
  4. 3.7 SE11创建自建表-外键
  5. ubuntu中vscode配置python_ubuntu下vs code的python虚拟环境的配置
  6. 华东理工计算机与金融专业,2019年华东理工大学各专业录取分数线
  7. .net runtime占用cpu_Go服务在容器内CPU使用率异常问题排查手记
  8. Windows下安装谷歌测试框架Googletest并测试小例子
  9. vue项目:this.function()中关于:this指针失效的问题
  10. phpcms数据库 mysql 清空与导入 - phpMyAdmin操作 - 方法篇