JQuery,ajax异步加载selectoption/option/select多选框:

摘要:最近项目中用到了jquery,ajax,由于很长时间没用了,所以这次做花了很多时间,现在记录一下,方便以后回忆:

一:js文件:

<script type="text/javascript">// 进出港显示字段权限分配function jingchugang(){var tableName = $('input:radio:checked').val();$.ajax({type:"POST",url:"<s:url value='/u/showFieldSet'/>",data:"tableName="+tableName,dataType:"json",success:function(dataMap){var fieldList = dataMap.fieldList;if(fieldList != null && fieldList.length > 0){//var start = "<select id='selectL' name='selectL' multiple='multiple'>";//var str = '';for(var i = 0; i< fieldList.length; i++){//str += "<tr><td><input type='checkbox' id='fieldName' name='fieldName'/>"+fieldList[i].fieldName+"<td></tr>";//str += "<option value='"+fieldList[i].id+"'>"+fieldList[i].fieldName+"</option>";$("<option value='"+fieldList[i].id+"'>"+fieldList[i].fieldName+"</option>").appendTo("#selectL");}//var end = "</select>";//$("str").appendTo("#selectL");}},});} 
</script>

二:jsp文件:

<tr class="even"><td><div class="select_side"><p>待选区</p><select id="selectL" name="selectL" multiple="multiple"></select></div><div class="select_opt"><p id="toright" title="添加">></p><p id="toleft" title="移除"><</p></div><div class="select_side"><p>已选区</p><select id="selectR" name="selectR" multiple="multiple"></select></div><div class="sub_btn"><input type="button" id="sub" value="getValue" /></div></td></tr>

三:最后我把这个页面附上:

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ include file="../../common/include_tag.jsp"%>
<%@ include file="../../common/page_var.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><%=pageTitle%></title>
<link href="<s:url value='/images/favicon.ico'/>" rel="shortcut icon"type="image/x-icon" />
<%@ include file="../../common/page_head.jsp"%>
<script type="text/javascript">$(function() {pilicat.title2div('title2div');pilicat.keysubmit('form1', 'submit', true);});
</script>
<script type="text/javascript">
$(function(){var leftSel = $("#selectL");var rightSel = $("#selectR");$("#toright").bind("click",function(){		leftSel.find("option:selected").each(function(){$(this).remove().appendTo(rightSel);});});$("#toleft").bind("click",function(){		rightSel.find("option:selected").each(function(){$(this).remove().appendTo(leftSel);});});leftSel.dblclick(function(){$(this).find("option:selected").each(function(){$(this).remove().appendTo(rightSel);});});rightSel.dblclick(function(){$(this).find("option:selected").each(function(){$(this).remove().appendTo(leftSel);});});$("#sub").click(function(){var showFields = [];rightSel.find("option").each(function(){showFields.push(this.value);});showFields = showFields.join(",");if(showFields == ""){alert("没有选择任何项!");}else{alert(showFields);}});});
</script>
<script type="text/javascript">// 进出港显示字段权限分配function jingchugang(){var tableName = $('input:radio:checked').val();$.ajax({type:"POST",url:"<s:url value='/u/showFieldSet'/>",data:"tableName="+tableName,dataType:"json",success:function(dataMap){var fieldList = dataMap.fieldList;if(fieldList != null && fieldList.length > 0){//var start = "<select id='selectL' name='selectL' multiple='multiple'>";//var str = '';for(var i = 0; i< fieldList.length; i++){//str += "<tr><td><input type='checkbox' id='fieldName' name='fieldName'/>"+fieldList[i].fieldName+"<td></tr>";//str += "<option value='"+fieldList[i].id+"'>"+fieldList[i].fieldName+"</option>";$("<option value='"+fieldList[i].id+"'>"+fieldList[i].fieldName+"</option>").appendTo("#selectL");}//var end = "</select>";//$("str").appendTo("#selectL");}},});} 
</script>
<script type="text/javascript">$(document).ready(function() {$('#form1').ajaxForm({dataType : 'json',beforeSubmit : checkForm,success : afterPost});});function checkForm(formData, jqForm, options) {alert(formData);}function afterPost(responseText, statusText, xhr, $form) {if (responseText.resultStatus == true) {parent.$.jBox.tip("保存成功,请刷新查看结果", "success", {timeout : 2000});parent.$.jBox.close(true);} else {$.jBox.error("保存失败", "失败信息");}}function submitForm() {getSelectAll();}
</script>
<style type="text/css">
.update {margin: 0 auto;padding: 0;width: 98%;
}.update td {margin: 0;height: 30px;padding: 5px;
}.update .name {text-align: right;
}.title_div {width: 350px;
}body {background: url("<s:url value='/images/gray_bg.png'/>") 0 0 repeat-y#F6F6F6;
}
</style>
<style type="text/css">
.select_side {float: left;width: 200px
}select {width: 180px;height: 120px
}.select_opt {float: left;width: 40px;height: 100%;margin-top: 36px
}.select_opt p {width: 26px;height: 26px;margin-top: 6px;background: url("<s:url value='/images/arr.gif'/>") no-repeat;cursor: pointer;text-indent: -999em
}.select_opt p#toright {background-position: 2px 0
}.select_opt p#toleft {background-position: 2px -22px
}
</style>
</head>
<body><div class="rounded table"><table width="100%" cellpadding="0" cellspacing="0" border="0" class="box_top"><tbody><tr><td class="title"></td><td></td></tr></tbody></table><div class="error rounded top_error hide"><ol></ol><span></span></div><form:form id="form1" commandName="roleInfo" action="${pageContext.request.contextPath}/u/saveRoleShowField" method="post"><table class="update" cellpadding="0" cellspacing="1" border="0"><tbody><tr class="even"><td>角色名称: ${roleInfo.roleName }<input type="hidden" name="id" value="${roleInfo.id}" /><input type="hidden"  name="showFields" value="${showFields}" /></td></tr><tr class="even"><td>航班类型:<c:forEach items="${tableNameList}" var="tableName"><c:if test="${tableName  == 'TB_CMS_FLGTINFO_D'}"><input type="radio" class="radio" name="tableName" id="TB_CMS_FLGTINFO_D" value="${tableName }" οnclick="jingchugang(${tableName});" />出港列表</c:if><c:if test="${tableName  == 'TB_CMS_FLGTINFO_A'}"><input type="radio" class="radio" name="tableName" id="TB_CMS_FLGTINFO_A" value="${tableName }" οnclick="jingchugang(${tableName});"/>进港列表</c:if></c:forEach></td></tr><tr class="even"><td>赋予的显示字段列表:</td></tr><!-- <tr class="even"><td><div id="menuTree"></div></td></tr> --><tr class="even"><td><div class="select_side"><p>待选区</p><select id="selectL" name="selectL" multiple="multiple"></select></div><div class="select_opt"><p id="toright" title="添加">></p><p id="toleft" title="移除"><</p></div><div class="select_side"><p>已选区</p><select id="selectR" name="selectR" multiple="multiple"></select></div><div class="sub_btn"><input type="button" id="sub" value="getValue" /></div></td></tr><%-- <tr class="even"><td>赋予的显示字段列表:</td></tr><tr class="even"><td><form:checkboxes items="${roleShowEntities }" path="showFields" itemLabel="fieldName" itemValue="id" delimiter=""/></td></tr> --%></tbody></table><table class="table top_line"><tbody><tr><td align="center" height="60"><a id="submit" class="submit"href="javascript:;" οnclick="submitForm();">保存</a></td></tr></tbody></table></form:form></div>
</body>
</html>


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443464.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习笔记5-C语言-数组

数组&#xff1a; 什么是数组&#xff1a; 相同类型变量的组合,是一种批量定义变量的方式 定义&#xff1a; 类型 数组名[数组变量数量]&#xff1b;int arr[5]; 使用&#xff1a;数组名[下标]&#xff1b;arr[0];数组下标从零开始&#xff0c;范围&#xff1a;0~数量-1 遍历…

学习笔记6-小项目-走迷宫、推箱子

获取方向键的功能&#xff1a;使用getch.h头文件中的getch函数 1、把windows中的getch.h头文件放到共享文件夹中 2、终端输入 cd /media/sf_GONGXIANG进入共享文件夹 3、sudo cp getch.h /usr/include 4、cd /usr/include/ 5、sudo chmod r getch.h头文件中的getch函数 time.h…

学习笔记7-C语言-进制转换、原返补、位运算、函数

进制转换 为什么要使用二、八进制、十六进制&#xff1f;因为现在的CPU只能识别高低两种电流&#xff0c;因此只能对二进制数据进行运算二进制数据虽然可以直接被cpu识别&#xff0c;但不方便人们书写、记录&#xff0c;所以把二进制数据转换成八进制是为了方便记录在文件中。…

学习笔记8-作业

作业1&#xff1a;实现一个函数&#xff0c;判断一个整数是否是素数&#xff0c;调用该函数来显示出100~10000之间的所有素数 #include<stdio.h> #include<stdbool.h> #include<math.h> bool is_sushu(int num) {for(int i2;i<sqrt(num);i){if(num%i0)re…

学习笔记9-C语言-传参、类型限定符、递归

函数传参&#xff1a; 1、形参变量属于它所在的函数&#xff0c;出了该函数就不能使用 2、实参与形参之间都是以赋值的形式进行数据传递&#xff08;值传递&#xff09; 3、return 其实是把返回值数据放置到一个公共的区域&#xff08;函数和函数调用者&#xff09;&#xff0…

Oracle创建视图实现获取当前数据所在的页数,这里以每页2条数据分页

摘要&#xff1a;Oracle创建视图实现获取当前数据所在的页数&#xff0c;这里以每页2条数据分页&#xff0c;详细请看&#xff1a; 一&#xff1a; DROP VIEW MIP.TB_CMS_FLGTINFO_D_VIEW;/* Formatted on 2014/12/4 8:35:36 (QP5 v5.115.810.9015) */ CREATE OR REPLACE FOR…

学习笔记10-C语言-小项目-五子棋

小项目&#xff1a; 需要的数据 1、定义棋盘的二维数组 2、定义变量用于记录下棋的坐标 3、定义角色 黑棋 O 白棋 * 空位业务逻辑&#xff1a; 是否需要对数据初始化 for(;;) {1、清屏、显示棋盘2、落子坐标是否合法、该位置是否有棋子3、判断是否五子连珠4、交换角色5、显示…

学习笔记11-C语言-指针

什么是指针&#xff1a; 指针是一种特护的数据类型&#xff0c;使用它可以定义指针变量&#xff0c;指针变量存储的是整型数据&#xff0c;代表内存的编号&#xff0c;通过这个编号可以访问到对应内存。为什么使用指针 1、函数与函数之间是相互独立的&#xff0c;但是有些时候…

学习笔记12-C语言-堆内存、字符串

什么是堆内存&#xff1a; 是进程中的一个内存段&#xff08;text\data\bss\heap\stack&#xff09;&#xff0c;由程序猿手动控制。 特点是足够大&#xff0c;缺点是使用麻烦为什么要使用堆内存&#xff1a; 1、随着程序的复杂&#xff0c;数据会越来越多。 2、其他的内存段…

学习笔记13-C语言-字符串函数、缓冲区

字符串的常用函数: #include<string.h> size_t strlen(const char* s); 功能&#xff1a;计算字符串长度&#xff0c;但是结果不包括\0 返回值&#xff1a;返回字符串中字符的个数size_t str_len(const char* str) {assert(NULL ! str);const char* tmp str;while(*tmp…

Oracle数据库里面查询字符串类型的字段不为空和为空的SQL语句:

摘要&#xff1a;近期项目中&#xff0c;在做高级查询的时候有个条件是根据选择的字段&#xff0c;然后再选择字段的值为空和不为空做查询&#xff0c;在写SQL语句的时候费了很长时间&#xff0c;现在记录一下&#xff0c;方便日后查看&#xff1a; 一&#xff1a;查询字符串类…

学习笔记14-C语言-小项目-通讯录

通讯录&#xff1a; 要求&#xff1a; 姓名&#xff0c;性别、电话&#xff0c;最多储存50个联系人 功能&#xff1a;1、添加联系人2、按名字删除联系人3、按姓名修改联系人信息4、查找联系人&#xff0c;可通过电话&#xff0c;名字查找&#xff0c;支持模糊查找5、显示所有联…

学习笔记15-C语言-预处理指令、条件编译、头文件

预处理指令&#xff1a; 程序猿编写的代码不是标准C代码&#xff0c;并不能被真正的编译器索编译&#xff0c;需要一段程序把代码翻译一下。 翻译的过程叫做预处理&#xff0c;被翻译的代码叫做预处理指令&#xff0c;以#开头的都是预处理指令查看预处理的过程&#xff1a;gcc…

学习笔记16-C语言-小项目-使用Makefile完成2048

Makefile: Makefile是一系列编译指令组成的可执行文本&#xff0c;也叫做编译脚本。 在终端执行make命令会自动执行Makefile脚本中的编译命令&#xff0c; 而且它还可以根据文件的最后修改时间来判断哪些文件是否需要重新编译、哪些文件不需要重新编译&#xff0c;从而大大提高…

学习笔记17-C语言-结构、联合、枚举

结构&#xff1a; struct 结构是由程序猿自己设计的一种数据类型&#xff0c;用于描述一个事务的各项数据&#xff0c;由若干个不同的基础数据类型组成。设计结构&#xff1a;struct 结构体名{类型 成员名&#xff1b;...}&#xff1b;定义结构体变量struct 结构体名 变量名&a…

Maven 3.0.5 安装和配置:

摘要&#xff1a;现在的Web项目越来越多的都用maven管理了&#xff0c;所以我也抽时间学习学习&#xff0c;为了赶上时代&#xff01; 一&#xff1a;首先到maven官网&#xff1a;http://maven.apache.org/&#xff0c;然后选择相应的版本下载&#xff0c;我这里下载的是maven…

学习笔记18-C语言-文件

文件的分类&#xff1a; 文本文件&#xff1a; 存储的是ASCII码值的二进制 二进制文件&#xff1a; 存储的是数据的补码文件IO&#xff1a; FILE *fopen(const char *path, const char *mode); 功能&#xff1a;打开或者创建文件 path&#xff1a;文件的路径 mode&#x…

使用INNER JOIN ON 多表关联查询,获取指定用户下指定权限的资源SQL:

摘要&#xff1a;最近在看一个开源框架&#xff0c;其中用户&#xff0c;角色&#xff0c;资源&#xff0c;这块我感觉比较重要&#xff0c;所以就自己也模仿着写了下&#xff0c;其中在获取指定用户下的权限资源的时候遇到问题了&#xff0c;开始时&#xff0c;我首先想到的方…

Maven学习记录之maven基本操作命令,maven本地工厂的创建,maven骨架的生成,以及在eclipse中创建maven工程:...

摘要&#xff1a;今天又学习了一下maven&#xff0c;之前是下载并安装和配置好了maven的环境&#xff0c;今天主要学习的内容包括&#xff1a;maven本地工厂的创建&#xff0c;maven骨架的生成命令&#xff0c;maven在dos下创建maven工程&#xff0c;以及在eclipse中创建mavne工…

Oracle中通过游标执行带参数的存储过程实现解析CLOB字段内的xml字符串:

摘要&#xff1a;近来之前的项目数据出现了问题&#xff0c;原因是由于之前在设计数据库的时候把时间字段设置成了字符串格式&#xff0c;所以给后期的数据操作带来了很大的麻烦&#xff0c;这里提醒一下各位程序猿&#xff0c;以后在开发项目的时候时间字段一定要是时间字段&a…