add_dir.html 4.61 KB
<div class="modal fade" id="add_dir" tabindex="-1" role="basic"
	aria-hidden="true">
	<div class="modal-dialog">
		<div class="modal-content">
			<div class="modal-header">
				<button type="button" class="close" data-dismiss="modal"
					aria-hidden="true"></button>
				<h4 class="modal-title">新增目录</h4>
			</div>
			<div class="modal-body">
				<form class="form-horizontal" role="form" id="dir_add_form"
					action="/module" method="post">
					<div class="alert alert-danger display-hide">
						<button class="close" data-close="alert"></button>
						您的输入有误,请检查下面的输入项
					</div>
					<input type="hidden" name="groupType" value="2">
					<div class="form-body">
						<div class="form-group">
							<label class="col-md-3 control-label">所属组</label>
							<div class="col-md-9">
								<select class="form-control input-medium " name="pId"></select>
							</div>
						</div>
						<div class="form-group">
							<label class="col-md-3 control-label">名称</label>
							<div class="col-md-9">
								<input type="text" class="form-control input-medium" name="name" > <span class="help-inline">
									不要超过10个汉字长度 </span>
							</div>
						</div>
						<div class="form-group">
							<label class="col-md-3 control-label">图标</label>
							<div class="col-md-9">
								<input type="text" class="form-control input-medium" name="icon">
								<span class="help-inline"> 参考 <a href="http://fontawesome.io/icons/" target="_Blank">font-awesome </a></span>
							</div>
						</div>
						<div class="form-group">
							<label class="col-md-3 control-label">是否可用</label>
							<div class="col-md-9">
								<select class="form-control input-medium" name="enable">
									<option value="1">可用</option>
									<option value="0">禁用</option>
								</select>
							</div>
						</div>
						<div class="form-group">
							<label class="col-md-3 control-label">描述</label>
							<div class="col-md-9">
								<input type="text" class="form-control input-medium" name="descriptions">
							</div>
						</div>
					</div>
				</form>
			</div>
			<div class="modal-footer">
				<button type="button" class="btn default" data-dismiss="modal">取消</button>
				<button type="button" class="btn btn-primary" id="addDirButton">提交数据</button>
			</div>
		</div>
	</div>
</div>
<script>
	$(function() {
		
		//modal 显示事件
		$('#add_dir').on('show.bs.modal', function(){
			//重置一下表单
			$('#add_dir #dir_add_form')[0].reset();
			$('#add_dir #dir_add_form .alert-danger').hide();
			
			refreshFormData(function(){
				var sel = getCurrSelNode();
				if(sel.length > 0)
					$('select[name=pId]').val(sel[0].id).change();
			});
		})
		.modal('show');
		
		$('select[name=pId]').on('change', function() {
			var objs = $('input[name=path],input[name=mappSymbol]')
				,dr = $('.defaultRes');
			if (this.value == '-2') {
				objs.attr('readonly', 'readonly');
				dr.hide();
			} else {
				objs.removeAttr('readonly');
				dr.show();
			}
		});

		var form = $('#dir_add_form');
		var error = $('.alert-danger', form);
		
		//提交
		$('#addDirButton').on('click', function() {
			form.submit();
		});
		//form validate
		form.validate({
			errorElement : 'span', 
			errorClass : 'help-block help-block-error', 
			focusInvalid : false, 
			rules : {
				name : {
					minlength : 2,
					required : true,
					maxlength : 10
				}
			},
			invalidHandler : function(event, validator) {         
				error.show();
				App.scrollTo(error, -200);
			},

			highlight : function(element) { 
				$(element).closest('.form-group').addClass('has-error'); 
			},

			unhighlight : function(element) { 
				$(element).closest('.form-group').removeClass('has-error'); 
			},

			success : function(label) {
				label.closest('.form-group').removeClass('has-error'); 
			},

			submitHandler : function(f) {
				var params = form.serializeJSON();
				error.hide();
				$post('/module', params, function(res){
					layer.msg('新增目录成功.');
					refreshJsTree();
					$('#add_dir').modal('hide');
				});
			}
		});
		
		
		function refreshFormData(cb){
			var i = layer.load(2);
			//加载组
			$get('/module/findByGroupType',{group: 1},function(array) {
				var options = '';
				$.each(array,
						function(i, obj) {
							options += '<option value='+obj.id+'>' + obj.name
									+ '</option>';
						});
				$('select[name=pId]').html(options).change();
				layer.close(i);
				cb && cb();
			});
		}
	});
</script>