|
@@ -2,6 +2,7 @@
|
|
|
var selectArea = []
|
|
|
var selectAreaCity = []
|
|
|
var selectAreaNow = null
|
|
|
+var selectAreaArr = []
|
|
|
var keyAllArr = []
|
|
|
/* 切换市区显示 */
|
|
|
function toggleDialog(f) {
|
|
@@ -16,10 +17,9 @@ function showMoreCity (arr) {
|
|
|
var box = $('.dialog>.select-area-box')
|
|
|
var tempHTML = ''
|
|
|
box.html(tempHTML)
|
|
|
- tempHTML += '<span class="select-area" style="margin-right: 10px;">全省</span>';
|
|
|
- console.log('--arr--', arr)
|
|
|
+ // console.log('--arr--', arr)
|
|
|
arr.forEach(function (value) {
|
|
|
- console.log('--value--', value.name)
|
|
|
+ // console.log('--value--', value.name)
|
|
|
tempHTML += '<span class="select-area">' + value.name.replace(/市$/g,'') + '</span>'
|
|
|
})
|
|
|
box.html(tempHTML)
|
|
@@ -29,25 +29,38 @@ $(document).on('click','span.select-area', function () {
|
|
|
var dom = $(this)
|
|
|
var t = dom.text()
|
|
|
if(t === '全国'){
|
|
|
+ selectArea.forEach(function (value) {
|
|
|
+ delAddBox(value)
|
|
|
+ })
|
|
|
return addDelBox(t,'#area-del')
|
|
|
}
|
|
|
- if(t === '全省'){
|
|
|
- t = selectAreaNow;
|
|
|
- }
|
|
|
/* 判断来源 */
|
|
|
var f = dom.parent().parent().hasClass('dialog')
|
|
|
if(f) {
|
|
|
- if(selectAreaCity.indexOf(t) !== -1) {
|
|
|
- selectAreaCity.splice(selectAreaCity.indexOf(t),1)
|
|
|
- } else {
|
|
|
- selectAreaCity.push(t)
|
|
|
- }
|
|
|
+ // console.log(t)
|
|
|
+ if(t === '全省') {
|
|
|
+ // console.log($(this))
|
|
|
+ selectAreaCity = [t]
|
|
|
+ $(this).nextAll().removeClass('select')
|
|
|
+ } else {
|
|
|
+ var tempI = selectAreaCity.indexOf('全省')
|
|
|
+ if(tempI !== -1) {
|
|
|
+ selectAreaCity.splice(tempI,1)
|
|
|
+ }
|
|
|
+ if(selectAreaCity.indexOf(t) !== -1) {
|
|
|
+ selectAreaCity.splice(selectAreaCity.indexOf(t),1)
|
|
|
+ } else {
|
|
|
+ selectAreaCity.push(t)
|
|
|
+ }
|
|
|
+ $(this).parent().children('.select-area:eq(0)').removeClass('select')
|
|
|
+ }
|
|
|
dom.toggleClass('select')
|
|
|
return true
|
|
|
} else {
|
|
|
if(t !== selectAreaNow) {
|
|
|
selectAreaCity = []
|
|
|
}
|
|
|
+ delAddBox('全国')
|
|
|
selectAreaNow = t
|
|
|
}
|
|
|
/* 展开市级 */
|
|
@@ -69,7 +82,12 @@ $(document).on('click','span.select-area', function () {
|
|
|
}
|
|
|
dom.addClass('click')
|
|
|
toggleDialog(true)
|
|
|
- showMoreCity(area.city)
|
|
|
+ var tempA = [{name: '全省'}].concat(area.city)
|
|
|
+ selectAreaArr = area.city.map(function (v) {
|
|
|
+ return v.name.replace(/市$/g,'')
|
|
|
+ })
|
|
|
+ // console.log(area.city);
|
|
|
+ showMoreCity(tempA)
|
|
|
} else {
|
|
|
addDelBox(t,'#area-del')
|
|
|
toggleDialog(false)
|
|
@@ -87,21 +105,23 @@ $(document).on('click','.delete-close>i',function () {
|
|
|
function removeDelBox(select) {
|
|
|
$("#area-del").find("div[data-arr='selectArea'][data-val='全国']").remove();
|
|
|
if(select=="全国"){
|
|
|
- $("#area-del").html("");
|
|
|
+ if(!Array.isArray(window['selectArea'])) {
|
|
|
+ window['selectArea'] = []
|
|
|
+ }
|
|
|
+ $("#area-del").html("");
|
|
|
}else if (select=="全省"){
|
|
|
-
|
|
|
+ $("#area-del").find("div[data-arr='selectArea'][data-parent='"+select+"']").remove();
|
|
|
+ window['selectArea'].splice()
|
|
|
}else{
|
|
|
|
|
|
}
|
|
|
}
|
|
|
/* 添加可删除标签 */
|
|
|
function addDelBox(str,box,arr,template){
|
|
|
- // removeDelBox(str);
|
|
|
// console.log('--template,arr--', template,arr)
|
|
|
arr = arr || 'selectArea'
|
|
|
var tempKey = arr ? 'data-arr="'+arr+'"' : ''
|
|
|
- var dataVal = 'data-val="'+str+'"';
|
|
|
- template = template || '<div '+tempKey+' class="delete-close" '+dataVal+'>'+str+'<i class="iconfont icon-guanbi"></i></div>'
|
|
|
+ template = template || '<div '+tempKey+' class="delete-close" >'+str+'<i class="iconfont icon-guanbi"></i></div>'
|
|
|
var tempArr = window[arr]
|
|
|
if(!Array.isArray(tempArr)) {
|
|
|
window[arr] = []
|
|
@@ -117,9 +137,25 @@ function addDelBox(str,box,arr,template){
|
|
|
/* 确定选中 */
|
|
|
function areaSelect (f) {
|
|
|
if(f) {
|
|
|
- selectAreaCity.forEach(function (value) {
|
|
|
- addDelBox(value,'#area-del')
|
|
|
- })
|
|
|
+ // console.log(selectAreaCity);
|
|
|
+ var sf = selectAreaCity.indexOf('全省') !== -1
|
|
|
+ if(sf) {
|
|
|
+ selectAreaCity = [selectAreaNow]
|
|
|
+ // console.log('s1',selectArea)
|
|
|
+ selectAreaArr.forEach(function (value) {
|
|
|
+ var tempI = selectArea.indexOf(value)
|
|
|
+ // console.log(value,tempI)
|
|
|
+ if(tempI !== -1) {
|
|
|
+ delAddBox(value)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ addDelBox(selectAreaNow,'#area-del')
|
|
|
+ } else {
|
|
|
+ delAddBox(selectAreaNow)
|
|
|
+ selectAreaCity.forEach(function (value) {
|
|
|
+ addDelBox(value,'#area-del')
|
|
|
+ })
|
|
|
+ }
|
|
|
} else {
|
|
|
selectAreaCity = []
|
|
|
}
|
|
@@ -127,6 +163,18 @@ function areaSelect (f) {
|
|
|
selectAreaNow = null
|
|
|
toggleDialog(false)
|
|
|
}
|
|
|
+/* 删除box */
|
|
|
+function delAddBox(n) {
|
|
|
+ $('#area-del .delete-close').each(function () {
|
|
|
+ if($(this).text() === n) {
|
|
|
+ $(this).remove()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ selectArea = []
|
|
|
+ $('#area-del .delete-close').each(function () {
|
|
|
+ selectArea.push($(this).text())
|
|
|
+ })
|
|
|
+}
|
|
|
/* 输入事件 */
|
|
|
$(".user-input input").on('input',function () {
|
|
|
var dom = $(this)
|