' +
@@ -801,8 +797,18 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
// 渲染号码网格
Controller.api.renderNumberFilterGrid(layero);
- // 尾号下拉选择
- $('#nf-tail', layero).on('change', function () {
+ // 新增尾号
+ $('.btn-nf-add-tail', layero).on('click', function () {
+ Controller.api.addTailRow(layero, 0);
+ Controller.api.applyNumberFilters(layero);
+ });
+
+ // 尾号输入 & 删除事件委托
+ $('#nf-tail-list', layero).on('input change', '.nf-tail-select', function () {
+ Controller.api.applyNumberFilters(layero);
+ });
+ $('#nf-tail-list', layero).on('click', '.nf-tail-del', function () {
+ $(this).closest('.nf-tail-row').remove();
Controller.api.applyNumberFilters(layero);
});
@@ -846,7 +852,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
// 重置按钮
$('.btn-nf-reset', layero).on('click', function () {
- $('#nf-tail', layero).val('');
+ $('#nf-tail-list', layero).html('');
$('.nf-zodiac', layero).removeClass('btn-gray').addClass('btn-default');
$('.nf-color-btn', layero).removeClass('btn-gray').addClass('btn-default');
$('#nf-range-list', layero).html('');
@@ -856,6 +862,22 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
});
},
+ /**
+ * 新增一行尾号筛选
+ */
+ addTailRow: function (layero, value) {
+ var rowId = 'nf-tail-' + Date.now() + Math.random().toString(36).substr(2, 5);
+ var opts = '
';
+ for (var t = 0; t <= 9; t++) {
+ opts += '
';
+ }
+ var html = '
' +
+ ' ' +
+ ' ' +
+ '
';
+ $('#nf-tail-list', layero).append(html);
+ },
+
/**
* 新增一行区间筛选
*/
@@ -899,7 +921,14 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
* 应用筛号器过滤条件
*/
applyNumberFilters: function (layero) {
- var tailVal = $('#nf-tail', layero).val();
+ // 收集所有选中的尾号
+ var excludedTails = [];
+ $('.nf-tail-select', layero).each(function () {
+ var val = $(this).val();
+ if (val !== '' && excludedTails.indexOf(parseInt(val)) === -1) {
+ excludedTails.push(parseInt(val));
+ }
+ });
// 收集被点击(置灰)的生肖
var excludedZodiacs = [];
$('.nf-zodiac.btn-gray', layero).each(function () {
@@ -929,8 +958,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
var hidden = false;
- // 尾号筛选:选择了具体尾号则屏蔽该尾号
- if (tailVal !== '' && parseInt(tailVal) === tail) {
+ // 尾号筛选:选中多个尾号,任一命中即屏蔽
+ if (excludedTails.length > 0 && excludedTails.indexOf(tail) !== -1) {
hidden = true;
}
// 区间筛选:在区间=白名单(OR)、排除区间=黑名单(OR)