1. 双向选择器,略有修改,效果见附件图,jsp页面:
<table align="center" width="80%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="40%">
请选择<br/>
<select name="s1" size="15" multiple="multiple" id="s1" style="width:100%;">
</select>
</td>
<td width="20%" align="center">
<input type="button" name="add" id="add" value=" > " />
<input type="button" name="addall" id="addall" value=">> " />
<input type="button" name="remove" id="remove" value=" < " />
<input type="button" name="removeall" id="removeall" value="<< " />
</td>
<td width="40%">
已选择<br/>
<select name="s2" size="15" multiple="multiple" id="s2" style=" width:100%;"> </select>
</td>
</tr>
</table><br/><br/>
<div align="center">
<button id="updaterole" type="button">保存</button> <button type="button" id="close">关闭</button>
<!--
<input id="reset" type="reset" value="返回"/> -->
</div>
</form>
</div>
2. js代码:(在同一jsp页面)
双击可进行选择
用ajax获取待选项与已选项,已选择json返回格式为:
[{"name":"超级管理员","id":1,"description":"超级管理员","status":1,"createDatetime":"2011-12-08 15:20:15","createBy":1,"updateDatetime":"2011-12-08 15:20:19","updateBy":1}]
<script type="text/javascript">
$("#s1").html("");
$("#s2").html("");
//请选择角色
$.ajax({
url: "services/sys/sel-wait.do",
data: {"operid":id},
success: function(data) {
for(var i=0;i<data.length;i++){
$("#s1").append("<option value='"+data[i].id+"'>"+data[i].name+"</option>");
}
},
error: function() {
}
});
//已选择角色
$.ajax({
url: "services/sys/sel-select.do",
data: {"operid":id},
success: function(data) {
for(var i=0;i<data.length;i++){
$("#s2").append("<option value='"+data[i].id+"'>"+data[i].name+"</option>");
}
},
error: function() {
}
});
//$("#s1 option:first,#s2 option:first").attr("selected",true);
$("#s1").dblclick(function(){
$("option:selected",this).clone().appendTo("#s2");
$("option:selected",this).remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
$("#s2").dblclick(function(){
$("option:selected",this).clone().appendTo("#s1");
$("option:selected",this).remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
$("#add").click(function(){
$("#s1 option:selected").clone().appendTo("#s2");
$("#s1 option:selected").remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
$("#remove").click(function(){
$("#s2 option:selected").clone().appendTo("#s1");
$("#s2 option:selected").remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
$("#addall").click(function(){
$("#s1 option").clone().appendTo("#s2");
$("#s1 option").remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
$("#removeall").click(function(){
$("#s2 option").clone().appendTo("#s1");
$("#s2 option").remove();
//$("#s1 option:first,#s2 option:first").attr("selected",true);
});
</script>

- 大小: 34.9 KB
分享到:
相关推荐
然而,在Node.js + Vue的聊天系统中,我们更倾向于使用JSON API和SPA(单页应用程序)模式,而不是传统的JSP。 总的来说,这个基于Node.js + Vue的聊天系统源码提供了一个实时通信的实践案例,它展示了如何将前后端...
3. **JSON序列化/反序列化**:消息通常以JSON格式在网络间传输,了解如何在Java中使用Gson或Jackson库处理JSON数据。 4. **数据库操作**:学习SQL语句,了解如何使用JDBC进行数据库连接和数据操作。 五、实践意义 ...
这个项目为初学者提供了一个实际操作的平台,可以学习到如何在Java后端实现RESTful API,以及如何使用Vue.js进行前端页面的构建和数据的双向绑定。同时,通过SSM框架,可以理解MVC模式的工作原理和数据库操作流程。...
{1.11.2.1}选择排序}{38}{subsubsection.1.11.2.1} {1.11.2.2}冒泡排序}{39}{subsubsection.1.11.2.2} {1.11.2.3}插入排序}{40}{subsubsection.1.11.2.3} {1.11.3}递归调用}{41}{subsection.1.11.3} {1.12}Java...
论文模板-justnews6.0.1 插件:QAPress社交问答 v2.3.1-实训商业源码.zip
内容概要:本文介绍了基于Matlab的储能系统选址定容程序,主要采用了蒙特卡洛随机算法进行优化配置。文中详细解释了蒙特卡洛算法的工作原理,即通过大量随机抽样来评估不同配置方式下储能系统的性能,从而确定最优配置。此外,还引入了非粒子群算法进一步优化配置效果。程序每行代码均配有详细注释,便于初学者理解和学习。同时,提供了图形化的结果展示,使得结果更为直观。最后,附带相关文献供深入研究。 适合人群:对储能系统优化感兴趣的科研人员、工程技术人员及希望学习Matlab编程的学生。 使用场景及目标:适用于需要解决储能系统选址定容问题的研究项目或工程项目,帮助用户找到最佳配置方案,提高储能效率。 其他说明:程序稳定可靠,所有步骤都有详尽说明,非常适合零基础的学习者入门。
工程项目管理中风险防控签证管理及反索赔.ppt
oppo s9h s9i固件 10.508
基于FPGA的RWA转RGB视频格式转换源码verilog,这个 Verilog 代码实现了一个基本的 RAW 到 RGB 转换器,适用于 FPGA 实现。主要功能包括:参数化设计:支持配置图像尺寸、位深度和 Bayer 模式,Bayer 模式处理:支持 RGGB、BGGR 等常见 Bayer 模式,双线性插值算法:使用邻域像素进行颜色插值,行缓存机制:使用 3 行缓存实现 2x2 邻域访问,边界处理:处理图像边缘像素的插值问题,完整测试平台:提供测试序列和基本验证逻辑
曹依蕊-毕业论文.pdf
实训商业源码-汽修汽配制造类网站源码-毕业设计.zip
计算机系统
内容概要:本文介绍了基于STM32的BMS电池管理系统,重点讲解了其源代码和官方参考原理图。STM32因高性能、低功耗被广泛应用于BMS系统中,能够实时监控电池的关键参数,确保电池的安全高效运行。文中详细解读了官方提供的参考原理图,解释了电路连接和信号传递关系。此外,引入了实时操作系统uCos,增强了任务调度和资源管理能力,使BMS系统对电池状态的监测和控制更为迅速准确。源代码规范且注释详尽,便于理解和移植。文中还穿插了多个代码片段,帮助理解系统运行原理,如通过ADC模块读取电压值并实现实时更新和显示,以及合理分配任务优先级确保电池安全充放电。 适合人群:电子工程专业学生、嵌入式系统开发工程师、从事电池管理系统相关工作的技术人员。 使用场景及目标:①学习STM32在BMS系统中的应用;②掌握实时操作系统uCos的任务调度和资源管理;③理解BMS系统的硬件设计和软件编程;④提高代码移植能力和系统优化技巧。 其他说明:本文不仅适用于初学者入门,也适合有经验的开发者进行深入研究和技术提升。通过学习本文,读者可以在电动汽车、储能系统等领域中更好地应用和发展BMS技术。
啤酒厂自动化检测仪表内部培训教材.ppt
实训商业源码-社区授权系统-毕业设计.zip
实训商业源码-今日头条-毕业设计.zip
我国主要河流、湖泊矢量边界数据集,包括一级、二级、三级、四级、五级流域和河流数据; 湖泊数据; 数据均为shp格式,可以直接使用主流GIS软甲加载,可用于数据分析、制图等用途。
河北08安装-第十册-自动化控制仪表安装工程.doc
内容概要:本文介绍了如何利用Kinect V2传感器和机械臂系统,结合上位机(基于VS2019和Qt5的C++编程)和下位机(STM32微控制器),实现目标抓取的任务。具体步骤包括:从Kinect V2获取深度数据并进行图像处理,计算目标位置,进行手眼标定,通过串口通信将逆运动学结果传送到下位机,最后由STM32控制机械臂完成抓取动作。文中详细描述了各个模块的具体实现方法及其代码片段。 适合人群:对机器人技术和嵌入式系统有一定了解的研发人员和技术爱好者。 使用场景及目标:适用于需要实现自动化目标抓取系统的工业应用场合,如智能仓储、生产线自动化等。目标是提高生产效率和精度,减少人工干预。 其他说明:文中提供的代码和算法可以根据实际需求进行修改优化,以适应不同的应用场景。同时,附带的实验结果显示了系统的可行性和有效性。
内容概要:本文探讨了分布式电源(DG)接入对9节点配电网节点电压的影响。通过构建9节点配电网模型,设置分布式电源的容量并在特定节点接入,利用Matlab进行潮流计算,最终绘制电压波形图,展示了DG接入前后各节点电压变化情况。研究表明,DG的接入显著影响配电网的电压分布,特别是在高渗透率情况下,可能导致某些节点电压升高或降低。 适合人群:电力系统研究人员、电气工程学生以及从事智能电网和分布式发电研究的专业人士。 使用场景及目标:适用于评估分布式电源接入对配电网稳定性的影响,帮助优化DG配置,确保电网安全稳定运行。此外,还可用于教学演示,使学生更好地理解DG的工作机制及其对电网的影响。 其他说明:文中提供的Matlab代码为简化版本,实际应用时需要根据具体情况进行调整和完善。