`
toknowme
  • 浏览: 139925 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

基于Bootstrap 和 bootstrapDualListbox的表格动态生成

 
阅读更多
(1)整体设计讲解


 
 

(2)核心代码分析

 
(2.1)页面初始化传入参数,请传入本次方案涉及到的所有菜品
格式:Json数组
属性分析
    dishId:菜品ID
    dishName:菜品名称
    zPrice:原价
    aPrice:金卡价
    bPrice:银卡价
    cPrice:绿卡价
demo
var dishesArray = [ {
"dishId" : 1,
"dishName" : "清蒸鲈鱼1",
"zPrice":101,
"aPrice":71,
"bPrice":81,
"cPrice":91
},{
"dishId" : 2,
"dishName" : "清蒸鲈鱼2",
"zPrice":102,
"aPrice":72,
"bPrice":82,
"cPrice":92
},{
"dishId" : 3,
"dishName" : "清蒸鲈鱼3",
"zPrice":103,
"aPrice":73,
"bPrice":83,
"cPrice":93
},{
"dishId" : 4,
"dishName" : "清蒸鲈鱼4",
"zPrice":104,
"aPrice":74,
"bPrice":84,
"cPrice":94
},{
"dishId" : 5,
"dishName" : "清蒸鲈鱼5",
"zPrice":105,
"aPrice":75,
"bPrice":85,
"cPrice":95
},{
"dishId" : 6,
"dishName" : "清蒸鲈鱼6",
"zPrice":106,
"aPrice":76,
"bPrice":86,
"cPrice":96
} ]
 
 

(2.2)动态生成菜品下拉框插件,使用DualListBox插件

    $("#duallistboxDishes").bootstrapDualListbox();
 

(2.3)动态方案菜单关联表格

   
 //2.根据保存的方案自动生成菜单,设置价格
function savePlanDishes() {
var dishes = $("#duallistboxDishes").val();//(2.3.1)获取插件值
$("#tablePlanDishesSetPrice").html("");
initTablePlanDishesSetPrice();
        //(2.3.2)动态生成
for(var i in dishes) {
var dishId = dishes[i];
for(var z = 0; z < dishesArray.length; z++) {
if(dishId == dishesArray[z].dishId) {
var tr = $("<tr>").attr("id","_TR_DISH");

var td1 = $("<td>").html("<input type='text' id='dishId' value="+dishesArray[z].dishId+" disabled='disabled'>");
var td2 = $("<td>").html("<input type='text' id='dishName' value="+dishesArray[z].dishName+" disabled='disabled'>");
var td3 = $("<td>").html("<input type='text' id='zPrice' value="+dishesArray[z].zPrice+" disabled='disabled'>");
var td4 = $("<td>").html("<input type='text' id='aPrice' value="+dishesArray[z].aPrice+">");
var td5 = $("<td>").html("<input type='text' id='bPrice' value="+dishesArray[z].bPrice+">");
var td6 = $("<td>").html("<input type='text' id='cPrice' value="+dishesArray[z].cPrice+">");

tr.append(td1);
tr.append(td2);
tr.append(td3);
tr.append(td4);
tr.append(td5);
tr.append(td6);

$("#tablePlanDishesSetPrice").append(tr);
}

}
}
}
 
 

    (2.4)封装“根据DOM_ID获取table中所有的input输入框的值”并且返回JSON数组

 
//根据DOM_ID获取table中所有的input输入框的值
function getTableAllValue(domId) {
var array = new Array();
var Obj = new Object();

var _tr = "#" + domId +" tr";
$(_tr).each(function (){
if($(this).attr("id") == "_TR_DISH") {
var Obj = new Object();
$(this).find("input").each(function (){
var _id = $(this).attr("id");
 	var _val = $(this).val();
 	Obj[_id] = _val;
})
array.push(Obj);
}
})
//alert(JSON.stringify(array));
return array;
}
 
    
 

(2.5)根据折扣动态设置表格中的价格

 
 
 

(2.6)获取表格中的数据信息

 
        直接调用    (2.4)中的方法,返回的是一个JSON数组字符串
格式:
 
选择菜品后方案JSON数组:
[{"dishId":"2","dishName":"清蒸鲈鱼2","zPrice":"102","aPrice":64.8,"bPrice":73.8,"cPrice":82.8},{"dishId":"3","dishName":"清蒸鲈鱼3","zPrice":"103","aPrice":65.7,"bPrice":74.7,"cPrice":83.7}]
 
 

(2.7)所有代码均在附件中crmActivityPlan.zip

 
 
  • 大小: 47.3 KB
3
2
分享到:
评论

相关推荐

    Jquery双向select控件Bootstrap Dual Listbox

    - 初始化插件:在DOM加载完成后,通过jQuery选择器找到`&lt;select&gt;`元素,然后调用`.bootstrapDualListbox()`方法对其进行初始化。 示例代码: ```html &lt;option value="1"&gt;Option 1 &lt;option value="2"&gt;Option ...

    jquery双列表框插件Bootstrap Dual Listbox

    Bootstrap Dual Listbox...接着,通过jQuery选择器找到你要转换为双列表框的元素,并调用`.bootstrapDualListbox()`方法初始化插件。例如: ```html &lt;link rel="stylesheet" href="dist/bootstrap-duallistbox.css"&gt; ...

    DualListBox, 用于jQuery和 Bootstrap的双列表框插件.zip

    DualListBox, 用于jQuery和 Bootstrap的双列表框插件 Bootstrap 双列表框概要Bootstrap 双列表框是一个双重列表框实现,特别为 Bootstrap 和jQuery设计。 这里控件对于用户很容易理解和使用。 也可以使用非常大的多...

    前端项目-bootstrap4-duallistbox.zip

    该压缩包中的"bootstrap-duallistbox-master"目录包含了项目的核心文件。以下是你可能会找到的一些关键文件: 1. `dist` 目录:包含预编译的CSS和JavaScript文件,可以直接在项目中使用。`.min.js`和`.min.css`文件...

    前端插件之Bootstrap Dual Listbox使用教程

    - 通过jQuery获取到select元素,并调用bootstrapDualListbox方法对其进行初始化。 - 在初始化的时候,可以传递一个配置对象来自定义控件的行为和外观,如列表标签的文本、过滤输入框的提示信息等。 当完成以上...

    bootstrap动态表格模板

    综上所述,Bootstrap动态表格模板是一个集成了筛选、分页和排序功能的高效工具,它利用Bootstrap的表格组件和JavaScript功能,提供了强大的数据展示和交互能力。在实际开发中,开发者可以依据这个模板,结合自身项目...

    Bootstrap表格编辑生成器插件.rar

    Bootstrap表格编辑生成器插件是基于流行的前端框架Bootstrap开发的一款实用工具,主要用于简化网页中表格的创建和编辑过程。在现代Web应用中,表格经常被用于展示结构化的数据,而Bootstrap表格编辑生成器则提供了...

    jquery.dualListbox1.3 研究.zip

    $('.duallistbox').bootstrapDualListbox(); }); ``` 在实际应用中,我们还可以结合HTML5的数据属性和JavaScript事件监听,实现更复杂的功能,如自定义按钮行为、动态加载选项等。 综上所述,jQuery dual...

    bootstraptable基于Bootstrap的jQuery表格插件

    BootstrapTable 是一个基于 jQuery 和 Bootstrap 框架的开源表格插件,它的出现极大地简化了在 Web 应用中创建功能丰富的数据展示表格的过程。这个插件提供了多种实用功能,如单选、多选、排序、分页、编辑、导出和...

    Bootstrap树型表格和多标题表格

    4. **jQuery集成**:基于jQuery库,利用其强大的DOM操作和事件处理能力,使得表格操作更加简便和动态。 5. **自定义扩展**:开发者可以根据需要扩展和定制功能,如添加搜索、筛选、分页等。 在实际应用中,使用这个...

    基于Bootstrap的树形表格设计源码

    本项目是基于Bootstrap的树形表格设计源码,包含31个文件,其中主要包含7个js脚本文件,5个css样式文件等。系统采用了JavaScript、CSS和HTML技术,实现了基于Bootstrap的树形表格功能。该项目最初出现在guns项目中,...

    基于Bootstrap的可展开表格行的jQuery表格插件

    bootstrap-table-expandable是一款非常实用的基于Bootstrap的可展开表格行的jQuery表格插件。该表格插件通过设置可以使每一行都具有展开和收缩的功能,行展开时可以显示额外的信息。而且该插件使用非常简单。

    基于bootstrap的管理系统

    基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于bootstrap的后台管理系统基于...

    基于bootstrap的简单 后台管理 系统

    这个基于Bootstrap的简单后台管理系统采用了扁平化设计,以简洁、实用为主要特点,旨在提供一个易于理解和使用的操作界面。 Bootstrap是Twitter推出的一个开源的用于前端开发的工具包,它是一个CSS/HTML框架,包含...

    jQuery基于Bootstrap.js表格行展开收缩隐藏代码.zip

    本资源"jQuery基于Bootstrap.js表格行展开收缩隐藏代码.zip"正是利用了这些特性,为表格数据的展示提供了更丰富的交互体验。 首先,我们来详细解释这个功能的工作原理。在网页中的表格,尤其是包含大量信息的表格,...

    基于bootstrap的动态表单的实现

    Bootstrap动态表单是一种高效、灵活的用户界面设计方式,它允许开发者在运行时根据需要创建和修改表单结构。在Web应用中,这种能力尤为重要,因为它可以满足不同用户的需求,或者适应不断变化的数据输入需求。...

    基于bootstrap和jquery的可拖拽移动div,可预览的页面生成器

    综上所述,这个基于Bootstrap和jQuery的页面生成器是一个强大的工具,它结合了拖放布局、实时预览、内置特效和jQuery UI控件,使得用户能够快速创建具有专业外观和动态效果的网页,无需深厚的编程基础。对于网页设计...

    bootstrap插件_table可编辑表格_demo

    在Bootstrap中,表格(Table)是常见的数据展示组件,而“bootstrap插件_table可编辑表格_demo”则是Bootstrap表格功能的一个扩展,它允许用户直接在表格内进行编辑,提供了更加交互式的用户体验。 Bootstrap表格的...

    基于Bootstrap的jquery动态数据表格插件

    raydreams.js是一款基于Bootstrap的jquery动态数据表格插件。该jquery动态数据表格的特点是使用简单,它能通过json动态加载表格所需的数据,并通过配置参数设置表格列是否排序和添加功能按钮等。

Global site tag (gtag.js) - Google Analytics