|
@@ -92,13 +92,13 @@
|
|
|
<text class="necessary">*</text>
|
|
|
站点:
|
|
|
</view>
|
|
|
- <view style="position:relative">
|
|
|
- <input name="siteName" v-model="formMess.siteName" @focus="test" @input="handleInput()" placeholder="请选择"></input>
|
|
|
+ <view style="position:relative" class="innerZd">
|
|
|
+ <input name="siteName" v-model="formMess.siteName" @click="test" @focus="focusfns" @input="handleInput()" placeholder="请选择"></input>
|
|
|
|
|
|
<view class="siteItems" v-if="isShow">
|
|
|
- <view class=" site-item" v-if="!newDataList.length">暂无结果</view>
|
|
|
+ <view class=" site-item" v-if="!siteItemData.length">暂无结果</view>
|
|
|
|
|
|
- <view class="site-item" v-for="(item,index) in newDataList" @click="add(item,index)" :key="index">{{item}}</view>
|
|
|
+ <view class="site-item" v-for="(item,index) in siteItemData" @click="add(item,index)" :key="index">{{item}}</view>
|
|
|
</view>
|
|
|
<view style="width:500rpx" class="selectedBox">
|
|
|
<button class="cu-btn sm margin-xs" v-for="(item,index) in selectedData" @click="deleteItem(item,index)">
|
|
@@ -158,13 +158,14 @@
|
|
|
},
|
|
|
|
|
|
// 站点多选下拉
|
|
|
- siteItemData: ["站点一", "站点二", "站点三", "站点四", "站点五", "站点六"],
|
|
|
- newDataList: ["站点一", "站点二", "站点三", "站点四", "站点五", "站点六"],
|
|
|
+ siteItemDataOrigin: ["站点一", "站点二", "站点三", "站点四", "站点五", "站点六"],
|
|
|
+ // newDataList: [],
|
|
|
|
|
|
selectedData: [],
|
|
|
- // 站点多选下拉 end
|
|
|
-
|
|
|
-
|
|
|
+ // 站点多选下拉 end
|
|
|
+
|
|
|
+ siteItemData: ["站点一", "站点二", "站点三", "站点四", "站点五", "站点六"],
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
onLoad: function(option) {
|
|
@@ -183,20 +184,45 @@
|
|
|
title: '权限新增'
|
|
|
});
|
|
|
}
|
|
|
+ },
|
|
|
+
|
|
|
+ mounted() {
|
|
|
+ document.addEventListener('click', (e) => {
|
|
|
+ if (e.target.className != 'uni-input-input') {
|
|
|
+ this.isShow = false;
|
|
|
+ }
|
|
|
+ });
|
|
|
},
|
|
|
methods: {
|
|
|
add: function(item, index) {
|
|
|
this.selectedData.push(item);
|
|
|
- this.newDataList.splice(index, 1);
|
|
|
this.isShow = false;
|
|
|
- this.formMess.siteName=''
|
|
|
+ this.formMess.siteName=''
|
|
|
+ this.siteItemData.splice(index, 1);
|
|
|
+
|
|
|
},
|
|
|
deleteItem: function(item, index) {
|
|
|
- // this.selectedData.remove(item);
|
|
|
- this.selectedData.splice(index, 1);
|
|
|
- this.newDataList.push(item);
|
|
|
+ // this.selectedData.remove(item);
|
|
|
+
|
|
|
|
|
|
-
|
|
|
+ this.selectedData.splice(index, 1);
|
|
|
+ this.siteItemDataOrigin.push(item);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ //将元素根据搜索内容过滤出来 这里改变了siteItemData
|
|
|
+
|
|
|
+ this.siteItemData = this.getNotSelectItem();
|
|
|
+
|
|
|
+
|
|
|
+ this.siteItemData = this.siteItemData.filter(item => item.indexOf(this.formMess.siteName) > -1);
|
|
|
+ // console.log('这是过滤来的');
|
|
|
+ // console.log(this.siteItemData);
|
|
|
+
|
|
|
+ // this.selectedData = newlist;
|
|
|
+ // console.log(this.selectedData)
|
|
|
+
|
|
|
+
|
|
|
},
|
|
|
|
|
|
// 站点多选下拉
|
|
@@ -206,14 +232,46 @@
|
|
|
test2: function() {
|
|
|
this.isShow = false;
|
|
|
},
|
|
|
- handleInput() {
|
|
|
- // var newlist = this.siteItemData.filter(item => item.indexOf(this.formMess.siteName) > -1)
|
|
|
- // this.newDataList = newlist;
|
|
|
- // console.log(this.newDataList)
|
|
|
+ handleInput() {
|
|
|
+ // this.getNotSelectItem();
|
|
|
+
|
|
|
+ //将元素根据搜索内容过滤出来 这里改变了siteItemData
|
|
|
+
|
|
|
+ this.siteItemData = this.getNotSelectItem();
|
|
|
+ this.siteItemData = this.siteItemData.filter(item => item.indexOf(this.formMess.siteName) > -1);
|
|
|
+
|
|
|
+ // this.selectedData = newlist;
|
|
|
+ // console.log(this.selectedData)
|
|
|
+
|
|
|
+ },
|
|
|
+ // 站点多选下拉 end
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ getNotSelectItem(){
|
|
|
+
|
|
|
+ let ok1 = this.siteItemDataOrigin;
|
|
|
+ let ok2 = this.selectedData;
|
|
|
+ // console.log('选中值',ok2);
|
|
|
+ // console.log('全部值',ok1);
|
|
|
+
|
|
|
+
|
|
|
+ if(ok2.length){
|
|
|
+ for(let i = 0; i < ok2.length; i++){
|
|
|
+ for(let j = 0; j < ok1.length; j++){
|
|
|
+ if(ok1[j] === ok2[i]){//值已经被选中
|
|
|
+ ok1.splice(j, 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return ok1;
|
|
|
+
|
|
|
+
|
|
|
},
|
|
|
- // 站点多选下拉 end
|
|
|
-
|
|
|
-
|
|
|
|
|
|
formSubmit: function(e) {
|
|
|
console.log('form发生了submit事件,携带数据为:' + JSON.stringify(e.detail.value))
|
|
@@ -244,7 +302,17 @@
|
|
|
},
|
|
|
formReset: function(e) {
|
|
|
console.log('清空数据')
|
|
|
- }
|
|
|
+ },
|
|
|
+ focusfns:function(e){
|
|
|
+ // this.getNotSelectItem();
|
|
|
+
|
|
|
+ //将元素根据搜索内容过滤出来 这里改变了siteItemData
|
|
|
+
|
|
|
+ this.siteItemData = this.getNotSelectItem();
|
|
|
+
|
|
|
+
|
|
|
+ this.siteItemData = this.siteItemData.filter(item => item.indexOf(this.formMess.siteName) > -1);
|
|
|
+ },
|
|
|
|
|
|
|
|
|
|