|
|
@@ -5766,7 +5766,7 @@ define('backend',['fast', 'template', 'moment'], function (Fast, Template, Momen
|
|
|
$(document).on('click', '.btn-dialog,.dialogit', function (e) {
|
|
|
var that = this;
|
|
|
var options = $.extend({}, $(that).data() || {});
|
|
|
- var url = Backend.api.replaceids(that, $(that).attr('href'));
|
|
|
+ var url = Backend.api.replaceids(that, $(that).data("url") || $(that).attr('href'));
|
|
|
var title = $(that).attr("title") || $(that).data("title") || $(that).data('original-title');
|
|
|
var button = Backend.api.gettablecolumnbutton(options);
|
|
|
if (button && typeof button.callback === 'function') {
|
|
|
@@ -5778,7 +5778,7 @@ define('backend',['fast', 'template', 'moment'], function (Fast, Template, Momen
|
|
|
Layer.close(index);
|
|
|
});
|
|
|
} else {
|
|
|
- Backend.api.open(url, title, options);
|
|
|
+ window[$(that).data("window") || 'self'].Backend.api.open(url, title, options);
|
|
|
}
|
|
|
return false;
|
|
|
});
|
|
|
@@ -5786,7 +5786,7 @@ define('backend',['fast', 'template', 'moment'], function (Fast, Template, Momen
|
|
|
$(document).on('click', '.btn-addtabs,.addtabsit', function (e) {
|
|
|
var that = this;
|
|
|
var options = $.extend({}, $(that).data() || {});
|
|
|
- var url = Backend.api.replaceids(that, $(that).attr('href'));
|
|
|
+ var url = Backend.api.replaceids(that, $(that).data("url") || $(that).attr('href'));
|
|
|
var title = $(that).attr("title") || $(that).data("title") || $(that).data('original-title');
|
|
|
var icon = $(that).attr("icon") || $(that).data("icon");
|
|
|
if (typeof options.confirm !== 'undefined') {
|
|
|
@@ -8953,7 +8953,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
|
|
|
},
|
|
|
dataFilter: function (data) {
|
|
|
if (data.code === 1) {
|
|
|
- return data.msg ? { "ok": data.msg } : '';
|
|
|
+ return data.msg ? {"ok": data.msg} : '';
|
|
|
} else {
|
|
|
return data.msg;
|
|
|
}
|
|
|
@@ -9100,7 +9100,9 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
|
|
|
showClose: true
|
|
|
};
|
|
|
$('.datetimepicker', form).parent().css('position', 'relative');
|
|
|
- $('.datetimepicker', form).datetimepicker(options);
|
|
|
+ $('.datetimepicker', form).datetimepicker(options).on('dp.change', function (e) {
|
|
|
+ $(this, document).trigger("changed");
|
|
|
+ });
|
|
|
});
|
|
|
}
|
|
|
},
|
|
|
@@ -9141,7 +9143,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
|
|
|
$(this).on('cancel.daterangepicker', function (ev, picker) {
|
|
|
$(this).val('').trigger('blur');
|
|
|
});
|
|
|
- $(this).daterangepicker($.extend({}, options, $(this).data()), callback);
|
|
|
+ $(this).daterangepicker($.extend(true, options, $(this).data()), callback);
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
@@ -9203,7 +9205,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
|
|
|
var refresh = function (name) {
|
|
|
var data = {};
|
|
|
var textarea = $("textarea[name='" + name + "']", form);
|
|
|
- var container = textarea.closest("dl");
|
|
|
+ var container = $(".fieldlist[data-name='" + name + "']");
|
|
|
var template = container.data("template");
|
|
|
$.each($("input,select,textarea", container).serializeArray(), function (i, j) {
|
|
|
var reg = /\[(\w+)\]\[(\w+)\]$/g;
|
|
|
@@ -9231,42 +9233,44 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
|
|
|
textarea.val(JSON.stringify(result));
|
|
|
};
|
|
|
//监听文本框改变事件
|
|
|
- $(document).on('change keyup', ".fieldlist input,.fieldlist textarea,.fieldlist select", function () {
|
|
|
- refresh($(this).closest("dl").data("name"));
|
|
|
+ $(document).on('change keyup changed', ".fieldlist input,.fieldlist textarea,.fieldlist select", function () {
|
|
|
+ refresh($(this).closest(".fieldlist").data("name"));
|
|
|
});
|
|
|
//追加控制
|
|
|
$(".fieldlist", form).on("click", ".btn-append,.append", function (e, row) {
|
|
|
- var container = $(this).closest("dl");
|
|
|
+ var container = $(this).closest(".fieldlist");
|
|
|
+ var tagName = container.data("tag") || "dd";
|
|
|
var index = container.data("index");
|
|
|
var name = container.data("name");
|
|
|
var template = container.data("template");
|
|
|
var data = container.data();
|
|
|
index = index ? parseInt(index) : 0;
|
|
|
container.data("index", index + 1);
|
|
|
- var row = row ? row : {};
|
|
|
+ row = row ? row : {};
|
|
|
var vars = {index: index, name: name, data: data, row: row};
|
|
|
var html = template ? Template(template, vars) : Template.render(Form.config.fieldlisttpl, vars);
|
|
|
- $(html).insertBefore($(this).closest("dd"));
|
|
|
- $(this).trigger("fa.event.appendfieldlist", $(this).closest("dd").prev());
|
|
|
+ $(html).insertBefore($(tagName + ":last", container));
|
|
|
+ $(this).trigger("fa.event.appendfieldlist", $(this).closest(tagName).prev());
|
|
|
});
|
|
|
//移除控制
|
|
|
- $(".fieldlist", form).on("click", "dd .btn-remove", function () {
|
|
|
- var container = $(this).closest("dl");
|
|
|
- $(this).closest("dd").remove();
|
|
|
+ $(".fieldlist", form).on("click", ".btn-remove", function () {
|
|
|
+ var container = $(this).closest(".fieldlist");
|
|
|
+ var tagName = container.data("tag") || "dd";
|
|
|
+ $(this).closest(tagName).remove();
|
|
|
refresh(container.data("name"));
|
|
|
});
|
|
|
- //拖拽排序
|
|
|
- $("dl.fieldlist", form).dragsort({
|
|
|
- itemSelector: 'dd',
|
|
|
- dragSelector: ".btn-dragsort",
|
|
|
- dragEnd: function () {
|
|
|
- refresh($(this).closest("dl").data("name"));
|
|
|
- },
|
|
|
- placeHolderTemplate: "<dd></dd>"
|
|
|
- });
|
|
|
- //渲染数据
|
|
|
+ //渲染数据&拖拽排序
|
|
|
$(".fieldlist", form).each(function () {
|
|
|
var container = this;
|
|
|
+ var tagName = $(this).data("tag") || "dd";
|
|
|
+ $(this).dragsort({
|
|
|
+ itemSelector: tagName,
|
|
|
+ dragSelector: ".btn-dragsort",
|
|
|
+ dragEnd: function () {
|
|
|
+ refresh($(this).closest(".fieldlist").data("name"));
|
|
|
+ },
|
|
|
+ placeHolderTemplate: $("<" + tagName + "/>")
|
|
|
+ });
|
|
|
var textarea = $("textarea[name='" + $(this).data("name") + "']", form);
|
|
|
if (textarea.val() == '') {
|
|
|
return true;
|
|
|
@@ -10180,10 +10184,15 @@ define('table',['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstr
|
|
|
$(Table.config.disabledbtn, toolbar).toggleClass('disabled', !ids.length);
|
|
|
});
|
|
|
// 绑定TAB事件
|
|
|
- $('.panel-heading ul[data-field] li a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
|
|
|
- var field = $(this).closest("ul").data("field");
|
|
|
+ $('.panel-heading [data-field] a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
|
|
|
+ var field = $(this).closest("[data-field]").data("field");
|
|
|
var value = $(this).data("value");
|
|
|
- $("select[name='" + field + "'] option[value='" + value + "']", table.closest(".bootstrap-table").find(".commonsearch-table")).prop("selected", true);
|
|
|
+ var object = $("[name='" + field + "']", table.closest(".bootstrap-table").find(".commonsearch-table"));
|
|
|
+ if (object.prop('tagName') == "SELECT") {
|
|
|
+ $("option[value='" + value + "']", object).prop("selected", true);
|
|
|
+ } else {
|
|
|
+ object.val(value);
|
|
|
+ }
|
|
|
table.bootstrapTable('refresh', {pageNumber: 1});
|
|
|
return false;
|
|
|
});
|