`
yearl
  • 浏览: 6667 次
  • 性别: Icon_minigender_1
  • 来自: 顺德
最近访客 更多访客>>
社区版块
存档分类
最新评论

用SwapSelect在view中管理一对多关联

阅读更多
在视图中建立一对象与已经存在的多个对象的关联比较麻烦。
在select-box中设置 multiple => true可以实现,但是如果选项太多的话,上下翻起来很麻烦。
或者用一堆的check_box。也不方便。

http://trendwork.kmf.de/26/swapselect-a-better-way-for-multiple-select-in-rails/
发现了SwapSelect
这个SwapSelect有左右两个选择框,从左边的框中选中到右边的框,提交就可以了。
只是目前还存在一些问题:
1.没有做成plugin,要将各文件拷到相应的位置;
2.有时不进行选择时会有问题,随便左右移动一下就好了;
3.选择框中什么都没有时,框会很窄,比较难看;
4.IE中显示有问题,在swapselect.css中改一下width:40%;就好了。
div.swap_select .swap_select_select {
	float:left;
	width:40%;
}

中文嘛,在swapselect.js中改一下就好了。
  this.languagesValues = new Object();
  this.languagesValues["AviableHeadline"] = "可选项";
  this.languagesValues["SelectedHeadline"] = "已选项";
  this.languagesValues["AssumeButtonTitleAttr"] = "添加";
  this.languagesValues["AssumeButtonText"] = "添加";
  this.languagesValues["AssumeAllButtonTitleAttr"] = "添加所有";
  this.languagesValues["AssumeAllButtonText"] = "添加所有";
  this.languagesValues["TakeBackButtonTitleAttr"] = "去除";
  this.languagesValues["TakeBackButtonText"] = "去除";
  this.languagesValues["TakeBackAllButtonTitleAttr"] = "去除所有";
  this.languagesValues["TakeBackAllButtonText"] = "去除所有";

中文显示时字号显得有些小,再改一下swapselect.css吧,改为font-size:12px;
div.swap_select p.swap_select_selected {
	font-size:12px;
	background-color:#EEEEEE;
	border:1px solid #CBCBCB;
	border-bottom:none;
}

用起来很简单。
  • 大小: 20.1 KB
分享到:
评论
1 楼 yearl 2009-12-22  
没有人发表意见?
大家还有没有其它办法?

相关推荐

    文件管理中打开文件,关联并自己的APP启动

    当我们谈论“文件管理中打开文件,关联并自己的APP启动”这个主题时,我们实际上是在讨论一种功能,即如何让一个应用程序能够处理特定类型的文件,并且在用户尝试打开这类文件时,使该应用出现在系统的打开方式列表中...

    thinkphp关联模型的使用

    在ThinkPHP中,使用`belongsToMany()`定义多对多关联。例如,用户和角色之间的多对多关系: ```php // 在User模型中 public function roles() { return $this->belongsToMany('Role', 'user_role', 'user_id', '...

    QlikView 中文教程手册

    - **QlikView Server**:部署在服务器上,允许多用户访问和协作,同时提供权限控制和安全性管理。 - **移动访问**:QlikView应用程序可以安装在移动设备上,让分析不受地理位置限制。 **7. 自定义和扩展** - **Qlik...

    IPMIView中文版,ipmi批量管理工具

    IPMIView中文版是一款强大的基于IPMI(Intelligent Platform Management Interface)协议的批量管理工具,专为管理员设计,便于高效地管理和监控支持IPMI的硬件设备。IPMI是一种开放标准的管理规范,允许用户在操作...

    Qt QGraphicsView 控件实现标尺和刻度先效果

    在Qt框架中,QGraphicsView是一个非常强大的控件,它用于显示复杂的2D图形场景,支持缩放、平移等操作。在这个特定的案例中,我们关注的是如何利用QGraphicsView来实现自定义的标尺和刻度线效果,而不需要额外引入...

    ssh2两表关联

    在Oracle数据库环境下,这种关联通常用于处理多对一、一对多或多对多的关系,以便在应用程序中实现数据的高效管理和查询。 首先,Struts2是一个MVC(Model-View-Controller)框架,它负责处理用户请求,控制应用...

    tcpview任务管理器(可提供监听端口的检查)

    在Windows操作系统中,每个网络连接都与特定的进程相关联,并通过一个或多个端口进行通信。端口是网络服务的标识符,允许不同的应用程序在同一台计算机上独立地处理多个网络连接。TCPView可以显示这些信息,包括进程...

    hibernate+struts一对多增删改查demo(学生对班级)

    在IT行业中,开发Web应用程序时,常常需要处理复杂的对象关系,比如一对一、一对多、多对多等。这里我们关注的是“一对多”关系的实现,以“hibernate+struts”框架为例,结合MySQL数据库,来创建一个学生对班级的增...

    MFC中在dialog中使用DOC/VIEW框架

    然而,在某些情况下,可能需要在对话框中使用DOC/VIEW,比如当你想在一个对话框中展示或编辑复杂的数据结构时。 **3. 创建对话框类** 首先,你需要创建一个继承自CDialog的对话框类。在这个类中,你可以添加控件...

    多个view自动换行

    在Android开发中,"多个view自动换行"通常是指在一个布局容器中,当视图(View)数量过多,无法在一行内显示时,系统能够自动将它们换行展示,以适应不同的屏幕尺寸和布局需求。这涉及到对ViewGroup的管理和布局管理...

    android 获取界面部分view,view截图,生成bitmap图片

    在Android开发中,有时我们需要对应用的某个特定View进行截图并保存或分享,例如用户希望分享当前活动的状态或者游戏得分。这个过程涉及到的关键知识点包括View的层级结构、Bitmap的生成与处理以及图片的保存和合成...

    IOS 使用XIB 自定义View

    在iOS开发中,自定义视图(View)是常见的需求,可以满足特定界面设计和功能实现。本篇文章将深入探讨如何使用XIB(XML Interface Builder)来创建和使用自定义视图。 首先,XIB是一种XML格式的文件,用于描述用户...

    将用户关联到角色和权限

    在IT行业中,尤其是在Web开发领域,用户管理和权限控制是至关重要的部分。本软件包的核心功能是"将用户关联到角色和权限",这涉及到身份验证和授权机制的实现。这里我们将详细探讨这一主题,以及与PHP开发相关的身份...

    实例讲解JavaScript的Backbone.js框架中的View视图

    在学习JavaScript前端开发框架时,Backbone.js是一个不可忽视...Backbone.js的View视图是单页面应用开发中不可或缺的一部分,它通过模板、事件监听和DOM更新的机制,给开发者提供了一个强大而灵活的用户界面管理方式。

    Vmware_Horizon_view7安装及管理手册

    Vmware Horizon View 7是一款由VMware公司开发的桌面虚拟化解决方案,它允许用户在数据中心集中管理桌面,并通过网络向最终用户提供。安装及管理手册详细地介绍了整个Horizon View 7的部署流程,包括连接服务器的...

    QlikView_11_中文参考手册完全版本

    QlikView 11中文参考手册完全版本是一个详尽的指南,旨在帮助用户深入理解和有效利用QlikView 11这一强大的商业智能和数据分析工具。QlikView是一款流行的数据可视化和发现平台,它允许用户从各种不同的数据源快速、...

    QlikView11 中文指导手册

    - **使用QlikView Server上的文档**:QlikView还支持通过服务器管理文档,用户可以从服务器上直接打开文档进行协作。 #### 四、QlikView使用教程 - **第1课:在QlikView中执行查询** - **文档打开**:打开一个示例...

    在Nutz[1.b.38]中使用视图对关联数据表的操作

    在Nutz 1.b.38 版本中,视图是处理关联数据表操作的一种高效方式。Nutz 是一个轻量级的Java框架,它提供了丰富的功能来支持数据库操作,包括视图的使用。视图在数据库设计中扮演着重要角色,允许开发者以简化的方式...

    vmware horizon view管理员手册

    2. **View Composer**:用于管理链接克隆桌面,这是一种高效的桌面部署方式,通过复制一个基础虚拟机来快速创建多个桌面实例,减少存储空间需求和管理复杂度。 3. **View Agent**:安装在每台虚拟机上的软件,使...

Global site tag (gtag.js) - Google Analytics