parent
e56787fc55
commit
9ab2bacf42
@ -0,0 +1,180 @@ |
|||||||
|
/** |
||||||
|
* 表单插件,使用方法: |
||||||
|
* var myform = layui.Form('formId'); |
||||||
|
* myform.setData({...}) |
||||||
|
* |
||||||
|
* var data = myform.getData(); |
||||||
|
* |
||||||
|
* var name = myform.getData('name') |
||||||
|
*/ |
||||||
|
layui.define(function (exports) { |
||||||
|
|
||||||
|
/** |
||||||
|
* form = new Form('formId'); |
||||||
|
* @param formId |
||||||
|
* @constructor |
||||||
|
*/ |
||||||
|
var Form = function (formId) { |
||||||
|
this.$form = $('#' + formId); |
||||||
|
this.parseForm(this.$form); |
||||||
|
} |
||||||
|
|
||||||
|
Form.prototype = { |
||||||
|
fire: function (eventName, data) { |
||||||
|
var handler = this['on' + eventName]; |
||||||
|
handler && handler(data); |
||||||
|
} |
||||||
|
, opt: function (attr) { |
||||||
|
return this[attr]; |
||||||
|
} |
||||||
|
/** |
||||||
|
* @private |
||||||
|
*/ |
||||||
|
, parseForm: function ($form) { |
||||||
|
var that = this; |
||||||
|
this.form = $form[0]; |
||||||
|
this.$els = $form.find('input,select,textarea'); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
/** |
||||||
|
* 同load(data) |
||||||
|
*/ |
||||||
|
, setData: function (data) { |
||||||
|
this.loadData(data); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* @private |
||||||
|
*/ |
||||||
|
, loadData: function (data) { |
||||||
|
this.reset(); |
||||||
|
for (var name in data) { |
||||||
|
var val = data[name]; |
||||||
|
var $el = this.$form.find('[name="' + name + '"]'); |
||||||
|
|
||||||
|
$el.each(function () { |
||||||
|
var _$el = $(this); |
||||||
|
if (_$el.is(':radio') || _$el.is(':checkbox')) { |
||||||
|
_$el.prop('checked', false); |
||||||
|
var elVal = _$el.val(); |
||||||
|
|
||||||
|
if ($.isArray(val)) { |
||||||
|
for (var i = 0, len = val.length; i < len; i++) { |
||||||
|
if (elVal == val[i]) { |
||||||
|
_$el.prop('checked', true); |
||||||
|
} |
||||||
|
} |
||||||
|
} else { |
||||||
|
_$el.prop('checked', elVal == val); |
||||||
|
} |
||||||
|
|
||||||
|
} else { |
||||||
|
_$el.val(val); |
||||||
|
} |
||||||
|
|
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
/** |
||||||
|
* 清除表单中的值,清除错误信息 |
||||||
|
*/ |
||||||
|
, clear: function () { |
||||||
|
this.$els.each(function () { |
||||||
|
var _$el = $(this); |
||||||
|
if (_$el.is(':radio') || _$el.is(':checkbox')) { |
||||||
|
this.checked = false; |
||||||
|
} else { |
||||||
|
this.value = ''; |
||||||
|
} |
||||||
|
|
||||||
|
var msg = _$el.data('msg'); |
||||||
|
if (msg) { |
||||||
|
msg.text(''); |
||||||
|
} |
||||||
|
|
||||||
|
}); |
||||||
|
} |
||||||
|
/** |
||||||
|
* 重置表单 |
||||||
|
*/ |
||||||
|
, reset: function () { |
||||||
|
var form = this.form; |
||||||
|
if (form && form.reset) { |
||||||
|
form.reset(); |
||||||
|
} else { |
||||||
|
this.clear(); |
||||||
|
} |
||||||
|
} |
||||||
|
/** |
||||||
|
* 获取表单数据,如果有fieldName参数则返回表单对应的值<br> |
||||||
|
* var id = form.getData('id') 等同于 var id = form.getData().id; |
||||||
|
* @param {String} fieldName |
||||||
|
* @return {Object} 返回JSON对象,如果有fieldName参数,则返回对应的值 |
||||||
|
*/ |
||||||
|
, getData: function (fieldName) { |
||||||
|
var that = this; |
||||||
|
var data = {}; |
||||||
|
|
||||||
|
this.$els.each(function () { |
||||||
|
var value = that._getInputVal($(this)); |
||||||
|
if (value) { |
||||||
|
var name = this.name; |
||||||
|
var dataValue = data[name]; |
||||||
|
if (dataValue) { |
||||||
|
if ($.isArray(dataValue)) { |
||||||
|
dataValue.push(value); |
||||||
|
} else { |
||||||
|
data[name] = [dataValue, value]; |
||||||
|
} |
||||||
|
} else { |
||||||
|
data[name] = value; |
||||||
|
} |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
if (typeof fieldName === 'string') { |
||||||
|
return data[fieldName]; |
||||||
|
} |
||||||
|
|
||||||
|
return data; |
||||||
|
} |
||||||
|
, getFormData: function ($form) { |
||||||
|
var data = {}; |
||||||
|
var dataArr = $form.serializeArray(); |
||||||
|
for (var i = 0, len = dataArr.length; i < len; i++) { |
||||||
|
var item = dataArr[i]; |
||||||
|
var name = item.name; |
||||||
|
var itemValue = item.value; |
||||||
|
var dataValue = data[name]; |
||||||
|
|
||||||
|
if (dataValue) { |
||||||
|
if ($.isArray(dataValue)) { |
||||||
|
dataValue.push(itemValue); |
||||||
|
} else { |
||||||
|
data[name] = [dataValue, itemValue]; |
||||||
|
} |
||||||
|
} else { |
||||||
|
data[name] = itemValue; |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
return data; |
||||||
|
} |
||||||
|
, _getInputVal: function ($input) { |
||||||
|
if ($input.is(":radio") || $input.is(":checkbox")) { |
||||||
|
if ($input.is(':checked')) { |
||||||
|
return $input.val(); |
||||||
|
} |
||||||
|
} else { |
||||||
|
return $input.val(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
exports('Form', function (formId) { |
||||||
|
return new Form(formId); |
||||||
|
}); |
||||||
|
}); |
@ -0,0 +1,25 @@ |
|||||||
|
package com.gitee.sop.gatewaycommon.bean; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author tanghc |
||||||
|
*/ |
||||||
|
public enum RouteStatus { |
||||||
|
AUDIT(0, "待审核"), |
||||||
|
ENABLE(1, "已启用"), |
||||||
|
DISABLE(2, "已禁用"), |
||||||
|
; |
||||||
|
private int status; |
||||||
|
private String description; |
||||||
|
|
||||||
|
RouteStatus(int status, String description) { |
||||||
|
this.status = status; |
||||||
|
this.description = description; |
||||||
|
} |
||||||
|
|
||||||
|
public int getStatus() { |
||||||
|
return status; |
||||||
|
} |
||||||
|
|
||||||
|
public String getDescription() { |
||||||
|
return description; |
||||||
|
}} |
Loading…
Reference in new issue