`
sxdtzhaoxinguo
  • 浏览: 214528 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JQuery,ajax异步加载<select><option></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 }" onclick="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 }" onclick="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:;" onclick="submitForm();">保存</a></td>
				</tr>
			</tbody>
		</table>
		</form:form>
	</div>
</body>
</html>


分享到:
评论

相关推荐

    Jquery实现的的动态无刷新的二级联动菜单

    基于jquery的用&lt;select&gt;实现二级动态联动菜单,里面用到jquer+ajax+json解析方面知识,通过无刷新去后台值实现的,可用性非常好,欢迎大家下载学习。

    bootstrap后台管理模板

    &lt;p&gt;下拉选择框:jQuery Select2&lt;/p&gt; &lt;p&gt;树结构控件:jQuery zTree、jQuery wdtree&lt;/p&gt; &lt;p&gt;页面布局:jquery.layout.js 1.4.4&lt;/p&gt; &lt;p&gt;图表插件:echarts、highcharts&lt;/p&gt; &lt;p&gt;日期控件: My97DatePicker&lt;/p&gt;

    jQuery转换选择框为按钮的插件Select2Buttons.zip

    Select2Buttons是一个能将网页中的select选择框转换... &lt;option&gt;One&lt;/option&gt; &lt;option&gt;Two&lt;/option&gt; &lt;option&gt;Three&lt;/option&gt; &lt;/select&gt; [removed] $('select[name=simple-select]').select2Buttons(); [removed]

    飞飞无限级分类联动v1.0 Asp+sql+存储过程+ajax

    飞飞Asp乐园Asp Sql存储过程版无限级分类&lt;br&gt;开发说明:&lt;br&gt;本程序基于Asp环境开发&lt;br&gt;使用的数据库:SQLServer2000(存储过程)&lt;br&gt;js框架:Jquery/ajax&lt;br&gt;数据库名称:archives&lt;br&gt;&lt;br&gt;***能说明:&lt;br&gt;基于AJAX树状...

    JQUERY选择器 id选择器<br> 2)  $('.class')  css选择器,class类名<br>

    7) $('div&gt;p') 与上一个层次选择器差不多,但是div下面有子元素,子元素下还有孙元素,该选择器只能选子元素&lt;br&gt; &lt;hr&gt; 8) $('div+p') 该选择器用得很少表示div相邻下一个选择器,(必须是相同层次元素并且紧挨的)...

    基于Java web的ssm框架的书店商城系统设计与实现(源码+数据库).zip

    技术总结:&lt;br&gt; 前端:html css js jQuery bootstrap 后台:&lt;br&gt; 控制器:springMVC &lt;br&gt; Dependence Injection:spring&lt;br&gt; ORM:mybatis&lt;br&gt; 数据库:mysql 首页地址 http://localhost:8080/index.do 账号:可...

    jQuery的表单复选框特效.zip

    "&gt;&lt;span&gt;fx(方心):&lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;i class="iconfont icon-CombinedShapeCopy"&gt;&lt;/i&gt;&lt;/span&gt;&lt;span&gt;&lt;i class="iconfont icon-weixuanzhong"&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt; &lt;div 25px"&gt;&lt;b 10px;"&gt;&lt;span&gt;fg(方钩):&lt;/span&gt;&lt;/b&gt;...

    jquery-1.1.3 效率提高800%

    &lt;br&gt;Safari 2 3575ms 475ms 753% &lt;br&gt;Opera 9.1 3196ms 326ms 980% &lt;br&gt;Average improvement: 867% &lt;br&gt;&lt;br&gt;下表为jQuery1.1.3与常用的一些JS库选择器的对比:&lt;br&gt;Browser Prototype jQuery Mootools Ext Dojo &lt;br&gt;...

    JQuery综合练习.docx

    &lt;option value="北京"&gt;北京&lt;/option&gt; &lt;option value="上海"&gt;上海&lt;/option&gt; &lt;option value="南京"&gt;南京&lt;/option&gt; &lt;option value="杭州"&gt;杭州&lt;/option&gt; &lt;option value="深圳"&gt;深圳&lt;/option&gt; &lt;/...

    jQuery触摸屏滑动删除代码.zip

    &lt;option value="center"&gt;center&lt;/option&gt; &lt;option value="explode"&gt;explode&lt;/option&gt; &lt;option value="top"&gt;beam&lt;/option&gt; &lt;/select&gt; &lt;/label&gt; &lt;label for="animation-out"&gt; animation in &lt;select id=...

    漫画推荐系统javaweb

    &lt;h2&gt;系统环境&lt;/h2&gt; &lt;p&gt;系统环境:Windows&lt;/p&gt; ... &lt;p&gt;系统采用技术: Servlet+Jsp+Jdbc+dbutils+EasyUI+jQuery+Ajax+面向接口编程&lt;/p&gt;漫画推荐系统,模板改的很垃圾,里面很多东西没有弄完不过看着改改还能看

    jQuery formValidator表单校验插件ver2.9.1

    目前可以比较字符串和数值型)、AjaxValidator(通过ajax到服务器上做数据校验)、RegexValidator(提供可扩展的正则表达式库) 、FunctionValidator (允许用户利用外部函数进行校验)&lt;br&gt;InputValidator:&lt;br&gt;值的...

    jquery实现多级下拉菜单源码

    jquery实现多级下拉菜单源码 &lt;ul id="keleyi-com-nav"&gt; &lt;li class="site-name"&gt;&lt;a href="http://keleyi.com"&gt;&nbsp;&lt;/a&gt;&lt;/li&gt; &lt;li class="yahoo"&gt;&lt;a href="http://keleyi.com"&gt;导航菜单&lt;/a&gt; &lt;ul&gt; &lt;li&gt;&lt;a href=...

    jQuery ajax 多级联动 下拉框 Demo

    &lt;select id="SelProvince" class="select"&gt;&lt;/select&gt; &lt;select id="SelCity" class="select"&gt;&lt;/select&gt; &lt;select id="SelArea" class="select"&gt;&lt;/select&gt; &lt;select id="SelXian" class="select"&gt;&lt;/select&gt; &lt;/div&gt; ...

    jQuery-ajax-用户名异步请求

    jQuery-ajax-用户名异步请求,转载请注明出处:https://blog.csdn.net/qq_40374604(如有需要欢迎留言,我一定会尽快解答)

    利用Ajax+Jquery实现异步进度条效果

    vs2013 利用Ajax+Jquery实现异步进度条效果

    jQuery网页版俄罗斯方块游戏代码.zip

    &lt;div id="level"&gt;&lt;span&gt;Level:&lt;/span&gt;&lt;span class="level"&gt;1&lt;/span&gt;&lt;/div&gt; &lt;div id="score"&gt;&lt;span&gt;Score:&lt;/span&gt;&lt;span class="score"&gt;0&lt;/span&gt;&lt;/div&gt; &lt;button id="pause"&gt;暂停&lt;/button&gt; &lt;p&gt;控制:&lt;/p&gt; &lt;p&gt;← 向...

    jQuery的Ajax实现异步传输List、Map

    前后台传送list及map,包含了传json时所需要的包及相关内容

    Query实现的<select>动态二级联动菜单

    基于jquery的用&lt;select&gt;实现二级动态联动菜单,里面用到jquer+ajax+json解析方面知识,通过无刷新去后台值实现的,可用性非常好,欢迎大家下载学习。

    一个简单的网页设计

    &lt;option&gt;学生&lt;/option&gt;&lt;option&gt;一年&lt;/option&gt;&lt;option&gt;二年&lt;/option&gt;&lt;option&gt;三年&lt;/option&gt;&lt;option&gt;三年到五年&lt;/option&gt;&lt;option&gt;五年到十年&lt;/option&gt;&lt;option&gt;十年以上&lt;/option&gt; &lt;/select&gt; &lt;/div&gt; ...

Global site tag (gtag.js) - Google Analytics