`

利用JQuery修改使表格具有可拖动功能

阅读更多

<%= javascript_include_tag "dragdrop/jquery-1.2.6.min.js", "dragdrop/jquery.tablednd.js" %>

<script type="text/javascript">
$(document).ready(function() {
$("#listProducts tr:even').addClass('alt')");
$("#listProducts").tableDnD({
onDragClass: "myDragClass",
onDrop: function(table, row) {
var rows = table.tBodies[0].rows;
var valueStr = "<input type='hidden' name='sortValue' value='";
for (var i=0; i<rows.length; i++) {
valueStr += rows[i].id+" ";
}
valueStr += "'/>";
$("#valueArea").html(valueStr);
}
});
});
</script>
<%= form_tag(:action => "sequenceModify") %>
<div id="valueArea"></div>
<% if @tag != nil %><input type="hidden" name="tag_id" value="<%= @tag.id %>"/>
<% end %>

<table class="list" cellpadding="0" cellspacing="0" id="listProducts">
<colgroup>
<col />
<col style="width:150px;" />
<col style="width:110px;" />
<col style="width:60px;" />
</colgroup>
<tr>
<th onclick="sortTable('listProducts', 1, 's')">Name</th>
<th onclick="sortTable('listProducts', 2, 's')">Code</th>
<th class="numeric" onclick="sortTable('listProducts', 3, 'n')">Price</th>
<th class="numeric" onclick="sortTable('listProducts', 4, 'n')">Quantity</th>
</tr>
<% if @products.length > 0 then %>
<% for product in @products %>
<tr class="<%= alternate %>" id="<%= product.id %>">
<td><%= link_to(h(product.name), :action => 'edit', :id => product) %></td>
<td><%= product.code %></td>
<td class="numeric"><%= number_to_currency(product.price) %></td>
<td class="numeric"><%= product.quantity %></td>
</tr>
<% end %>
<% else %>
<tr><td colspan="4">No products to show in this view.</td></tr>
<% end %>
</table>
<%if @tag != nil %>
<center><input type="submit" value=" Sequence Modify! "/></center>
<% end %>
<%= end_form_tag %>提交

 

 

 

controller:

 

def sequenceModify
    sortValue = params[:sortValue]
    sortValue = sortValue.split(" ");
    sortTemp = 1
    tag_id = params[:tag_id]
    sortValue.each{|product_id|
      if product_id != "" and product_id != nil
        ProductTag.update_all("sequence = #{sortTemp}", "tag_id = #{tag_id} and product_id =
#{product_id}")
        sortTemp += 1
      end
    }
    redirect_to :action => 'list_by_tags', :key => tag_id
 end

 

 

 

分享到:
评论
1 楼 carlosbdw 2008-06-20  
如果有演示页面,或者写点注释就更好了

相关推荐

    jquery插件colResizable实现表格列可拖拽伸缩表格大小

    本篇文章将深入探讨如何使用jQuery插件colResizable来实现表格列的拖拽伸缩功能,从而使用户可以根据需要调整表格的列宽,提高用户界面的可定制性和交互性。 colResizable是一个轻量级的jQuery插件,它为HTML表格...

    jQuery实现表格宽度自动拖拽效果.zip

    在本资源中,我们主要关注的是使用jQuery实现表格宽度自动拖拽效果,这是一项常见的前端交互功能,使得用户可以根据需要自定义表格列宽。在HTML5的背景下,这个功能能够提升网页的用户体验,使得数据展示更为灵活和...

    jQuery仿Excel表格选中单元格变色特效.zip

    本文将深入探讨如何利用jQuery来实现仿Excel表格选中单元格变色的特效。 首先,我们需要理解jQuery的基本用法。jQuery的核心在于它的选择器,它能够高效地选取DOM元素,简化DOM操作。例如,我们可以使用`$("#id")`...

    jQuery简单仿Excel表格功能插件.zip

    同时,利用jQuery的事件绑定机制,可以监听用户的点击、拖拽等操作,从而实现动态更新表格。 在插件中,"index.html"文件是整个应用的入口,它定义了HTML结构,包括表格的基本框架。表格通常由`&lt;table&gt;`标签构建,...

    基于jQuery可以伸缩的表格

    "基于jQuery可以伸缩的表格"就是针对这一需求提出的一种解决方案,它利用jQuery库的强大功能,实现了表格列宽的动态调整,从而让用户在查看或操作数据时更加方便。 jQuery是一个轻量级、高性能的JavaScript库,它的...

    jquery实现无限极树表格菜单

    利用 jQuery 编写插件,处理数据和表格元素之间的映射。核心功能包括: - 根据数据生成表格行。 - 监听展开/折叠按钮的点击事件,动态加载或隐藏子菜单。 - 递归处理无限级的子菜单。 ```javascript (function($) ...

    jQuery表格

    总结来说,jQuery表格是利用jQuery库实现的一种高效、美观的数据显示工具,它通过丰富的功能和易用的API,极大地简化了网页表格的开发过程。通过学习和实践,你可以轻松地在自己的Web应用中集成这样的表格,提升用户...

    bootstrap-table拖拽表格改变列宽

    在“bootstrap-table拖拽表格改变列宽”这个主题中,我们将深入探讨如何实现用户可以动态调整表格列宽的功能,同时确保兼容主流浏览器,并保持表格的body部分与header部分对齐。 首先,我们需要引入必要的CSS和JS库...

    jQuery表格列宽可拖拽改变且兼容firfox

    综上所述,这篇文档详细介绍了如何利用jQuery来实现一个在多浏览器下均可工作的表格列宽可拖拽功能,包括了前端开发中常用到的jQuery库操作、DOM操作、事件处理、CSS样式设计以及浏览器兼容性处理等知识。

    jQuery-UI和jsPlumb实现拖拽连接模型demo下载

    本篇文章将详细讲解如何利用这两个工具实现一个拖拽连接模型的示例。 首先,jQuery-UI是jQuery的一个扩展库,提供了丰富的用户界面组件,如对话框、滑块、日期选择器等。它简化了HTML元素的交互操作,包括拖放功能...

    js表格上下左右拖动代码.zip

    标题中的"js表格上下左右拖动代码.zip"表明这是一个包含JavaScript和CSS实现的表格拖动功能的代码包。这个代码可能适用于那些希望在网页中创建交互性更强、用户可自由调整布局的表格应用的开发者。描述中提到"非常...

    动态添加编辑拖拽的树形表格

    这个标题描述的是一个使用EXT库结合jQuery实现的功能模块,允许用户在界面上动态地添加、编辑、删除和拖动表格节点,同时,通过与后台的数据交换,实现了数据的实时更新和存储。 EXT是一个强大的JavaScript UI框架...

    拖拽树和表格的终结版

    3. **DOM操作**:拖动过程中,需要动态地修改DOM元素的位置和状态,以模拟拖拽效果。同时,目标位置的判定也非常重要,确保用户能正确放置元素。 4. **动画效果**:为了提供更好的用户体验,拖拽过程中通常会添加...

    表格列宽拖动

    使用这个修改版,开发者可以在自己的项目中直接引入,实现表格列宽拖动的功能,无需从零开始编写相关代码。 总的来说,"表格列宽拖动"功能是通过jQuery插件实现的,其优化主要集中在代码质量、性能和用户体验上。...

    myExcel基于jquery实现的web版excel包含excel的基本功能

    myExcel利用jQuery选择器快速定位表格元素,通过事件监听实现用户交互,如点击、拖动等,确保操作的流畅性。 3. **CSS样式与布局**: 标签提及了"CSS相关",这表明myExcel的界面设计和样式控制很大程度上依赖CSS。...

    js表格自由拖拽排序特效代码.zip

    在JavaScript中,我们可以利用DOM(Document Object Model)接口对表格进行操作,包括获取、创建、修改和删除表格元素。 在描述中提到的"点击表格头部栏目可根据当前项进行排序",这是基于JavaScript事件监听和数组...

    基于jQuery ztree实现表格风格的树状结构

    ztree是一个基于jQuery实现的多功能“树插件”,主要特点包括优异的性能、灵活的配置和多样的功能组合。作为开源软件,它遵循MIT许可证,这意味着你可以自由地使用、修改和分发它,甚至不需要支付费用。对于ztree感...

    bootstrapTable jquery.tablednd行拖动调整资源.zip

    此压缩包"bootstrapTable jquery.tablednd行拖动调整资源.zip"包含了一组与BootstrapTable集成的jQuery Tablednd插件,主要用于实现表格行的拖放功能,以便用户可以通过直观的交互方式调整数据的顺序。 jQuery ...

    JQuery table改变列的宽度

    2. 创建一个具有可拖动列边界的表格,可以添加额外的CSS类来标记可拖动的列。 3. 使用jQuery的事件绑定功能,监听鼠标按下(`mousedown`)、移动(`mousemove`)和抬起(`mouseup`)事件。 4. 在`mousedown`事件中...

    精选_毕业设计_隔行换色鼠标指向表格行变色(含页面内容查找功能)、jQuery UI插件(gridster)_完整源码

    本项目“精选_毕业设计_隔行换色鼠标指向表格行变色(含页面内容查找功能)、jQuery UI插件(gridster)_完整源码”集成了这些技术,为用户提供了一套实用的功能。 首先,我们来探讨“隔行换色鼠标指向表格行变色”...

Global site tag (gtag.js) - Google Analytics