微信小程序实现城市列表选择

网络安全 2025-04-06 03:28www.168986.cn网络安全知识

原文:

未知的世界:一场心灵的冒险之旅

在这个充满神秘和奇妙的世界上,每一个角落都隐藏着未知的秘密。我们生活的环境,看似熟悉却又充满未知,就像是一本永远无法完全解读的书籍。这场冒险之旅不仅仅是对外在世界的,更是一场对内心世界的挖掘。

每一次冒险,都是一次挑战自我、超越自我的机会。我们面对困难,挑战极限,不断突破自我,寻找属于自己的可能性。无论是攀登高峰,还是穿越沙漠,我们都在中找到自我,体验生活的真谛。

这场冒险之旅充满了惊喜和奇遇。我们在旅途中遇见不同的人,看到不同的风景,经历不同的事情。每一个遇见,每一个经历,都在丰富我们的内心世界,让我们更加深刻地理解生活的多样性和复杂性。

未知的世界,是一场心灵的觉醒。我们在中认识到自己的渺小和无知,从而更加珍惜生命,尊重自然。我们在中找到自己的热情和兴趣,从而更加坚定地追求梦想,勇往直前。

这是一场没有终点的旅行。每一次,都是一个新的开始,一个新的征程。我们永远都在路上,永远都在寻找未知的世界。因为我们知道,只有不断,才能不断发现,才能不断成长。

揭开神秘面纱:心灵之旅启幕

置身于这奥妙无穷的世间,每一个角落都隐藏着令人心驰神往的秘密。我们所生活的环境,虽已熟悉却仍充满未知元素,如同那本永无止境、等待解读的巨著。这场之旅既是对外在世界的勇敢,也是心灵深处的一次自我挖掘。

每一次冒险的挑战都是一次超越自我的机遇。我们面对重重困难,挑战自我极限,不断突破个人界限,属于自己的潜能与可能。无论是征服巍峨高峰还是穿越苍茫沙漠,我们在的旅途中找到了自我定位,体验生活的真实韵味。

这场心灵之旅充满了令人惊叹的惊喜与奇遇。我们在旅途中邂逅各色人群,饱览无数风景,历经千奇百怪之事。每一次相遇与经历都是我们内心世界的一次丰富与完善,让我们更加深刻地领悟生活的多样性与复杂性。

揭开未知世界的神秘面纱是一场心灵的觉醒之旅。我们在中意识到自身的渺小与无知,从而更加珍视生命、尊重自然。我们在中发现内心的热情与兴趣所在,坚定了追梦的信念,勇往直前、无所畏惧。

这是一场永无止境的旅程。每一次都是一个新的起点、一个新的征程。我们永远在路上、永远未知的世界。因为我们深知:唯有不断、不断发现、才能不断成长、不断前行。让我们共同踏上这趟心灵之旅,揭开未知世界的神秘面纱!微信小程序实现城市列表选择功能的详细指南

你是否曾经遇到过这样的问题:需要在微信小程序中快速选择城市?这篇文章将为你提供一个实用的解决方案,详细如何在小程序中实现城市列表选择功能,包括实现效果预览、功能简介、目录结构、主要代码等。

实现效果预览

我们为你提供一个城市列表选择的预览效果,你可以想象一下用户是如何通过这个功能选择他们需要的城市。

功能简介

这个小程序的主要功能包括:

1. 城市的选择:用户可以在列表中选择他们需要的城市。

2. 按中文/拼音/首字母条件搜索:用户可以通过输入关键词搜索他们需要的城市。

3. 按首字字母快速定位到城市位置:当用户搜索某个城市时,程序会自动滚动到对应的城市位置。

目录结构

主要代码

我们将会提供`app.js`、`app.json`、`index.wxml`、`index.js`和`index.wxss`的代码。我们也会展示`citys.wxml`和`citys.js`的代码,这些代码是专门用于实现城市列表选择功能的。

app.js

```javascript

App({

globalData: {

trainBeginCity: '杭州',

trainEndCity: '北京'

}

})

```

app.json

```json

{

"pages":[

"pages/index/index",

"pages/citys/citys"

],

"window":{

"backgroundTextStyle":"light",

"navigationBarBackgroundColor": "fff",

"navigationBarTitleText": "WeChat",

"navigationBarTextStyle":"black",

"enablePullDownRefresh": true

}

}

```

index.wxml

```xml

测试消息消息这是测试消息啊啊啊

出发城市

目的城市

出发日期

{{date}}

```

index.js

```javascript

const app = getApp()

Page({

data: {

begin: '',

end: '',

date: null

},

formSubmit: function (e) {

wx.navigateTo({

url: '../trains/trains?beginCity=' + e.detail.value.beginCity + "&endCity=" + e.detail.value.endCity + "&leaveDate=" + e.detail.value.leaveDate,

})

},

formReset: function () {

console.log('form发生了reset事件')

},

bindDateChange: function (e) {

this.setData({

date: e.detail.value

})

},

onLoad: function (options) {

if (this.data.date == null || this.data.date.trim() == "") {

var day = new Date()

day.setTime(day.getTime() + 24 60 60 1000);

var year = day.getFullYear(); //年

var month = day.getMonth() + 1; //月

var day = day.getDate(); //日

if (month < 10) { month = "0" + month; }

if (day < 10) { day = "0" + day; }

this.setData({ date: year + '-' + month + '-' + day })

}

},

onPullDownRefresh: function () {

wx.sPullDownRefresh();

},

bindBeginCityView: function () {

wx.navigateTo({

url: '../citys/citys?cityType=begin',

})

},

bindEndCityView: function () {

wx.navigateTo({

url: '../citys/citys?cityType=end',

})

},

onShow: function () {

this.setData({ begin: app.globalData.trainBeginCity })

this.setData({ end: app.globalData.trainEndCity })

}

})

```

index.wxss

```css

.flex-box {

display: flex;

flex-direction: row;

border-bottom: CCCCCC solid 1px;

margin: 28rpx;

width: 600rpx;

padding:10rpx;

height: 70rpx;

}

.btn-area{

margin: 30rpx;

width: 600rpx;

}

.flex-box-header{

width: 25%;

font-size: 30rpx;

margin-: 10rpx;

color: 999999;

}

.flex-box-content{

width: 70%;

margin-: 0rpx;

font-size: 45rpx;

}

.flex-box-content-pricker{

margin-: 0rpx;

width: 70%;

font-size: 45rpx;

}

.form-content{

margin-:30rpx;

display: flex;

margin-left: 5%;

width: 90%;

background-color: FFFFFF;

border-radius: 20rpx;

height: 530rpx;

}

.bus-view{

display: flex;

flex-direction: row;

width: 700rpx;

height: 100rpx;

margin:20rpx;

font-size: 30rpx;

border-bottom: 1rpx solid CCCCCC;

}

.bus-view-left{

text-align: center;

line-height: 100rpx;

font-size: 30rpx;

width: 200rpx;

}

.bus-view-right{

width: 300rpx;

display: flex;

flex-direction: column;

font-size: 28rpx;

}

.bus-view-right-item{

text-align: center;

margin: 5rpx;

}

.btn-query{

background-color:3399CC;

color:FFFFFF;

}

put-city{

border: 1rpx solid CCCCCC;

}

```

citys.wxml

```xml

{{item.cityName}}

{{item.cityName}}

{{item.cityName}}

```

citys.js

```javascript

const app = getApp()

Page({

// 生命周期函数--监听页面加载

onLoad: function (options) {

this.setData({

cityType: options.cityType

})

if (this.data.cityResults == null) {

this.setData({

cityResults: this.data.citys

})

}

},

bindAZ: function (e) {

var currentCityName = e.currentTarget.dataset.id

var that = this;

//放入A-Z的scrollTop参数

if (that.data.scrollAZ == null) {

wx.createSelectorQuery().selectAll('.city-item-A-Z').fields({

dataset: true,

size: true,

rect: true

}, function (res) {

res.forEach(function (re) {

if (currentCityName == re.dataset.cityname) {

wx.pageScrollTo({

scrollTop: re. + that.data.scrollNow - 55.5,

duration: 0

})

}

})

}).exec();

} else {

this.data.scrollAZ.forEach(function (re) {

if (currentCityName == re.dataset.cityname) {

wx.pageScrollTo({

scrollTop: re. + that.data.scrollNow - 55.5,

duration: 0

})

}

})

}

},

onPageScroll: function (e) { // 获取滚动条当前位置

this.setData({

scrollNow: e.scrollTop

})

},

// 生命周期函数--监听页面初次渲染完成

onReady: function () {

},

citySelected: function (e) {

var cityNameTemp = e.currentTarget.dataset.cityname

if (this.data.cityType == 'begin') {

app.globalData.trainBeginCity = cityNameTemp

}

if (this.data.cityType == "end") {

app.globalData.trainEndCity = cityNameTemp

}

wx.navigateBack()

},

bindSarchInput: function (e) {

wx.pageScrollTo({

scrollTop: 0,

duration: 0

})

var inputVal = e.detail.value;

var cityResultsTemp = new Array()

var citys = this.data.citys;

if (inputVal == null || inputVal.trim() == '') {

this.setData({

cityResults: citys

})

return;

}

for (var i = 0; i < citys.length; i++) {

if (citys[i].cityNamedexOf(inputVal) == 0 || citys[i].cityPYdexOf(inputVal.toLowerCase()) == 0 || citys[i].cityPinYindexOf(inputVal.toLowerCase()) == 0) {

//去除热门城市

if (citys[i].cityPYdexOf("") != -1) {

continue;

}

var ifHas = false;

for (var j = 0; j < cityResultsTemp.length; j++) {

if (cityResultsTemp[j] == citys[i]) {

ifHas = true;

break;

}

}

if (!ifHas) {

cityResultsTemp.push(citys[i]);

}

}

}

this.setData({

cityResults: cityResultsTemp

})

},

// 生命周期函数--监听页面显示

onShow: function () {

},

// 生命周期函数--监听页面隐藏

onHide: function () {

},

// 生命周期函数--监听页面卸载

onUnload: function () {

},

// 页面相关事件处理函数--监听用户下拉动作

onPullDownRefresh: function () {

setTimeout(function () {

wx.sPullDownRefresh();

}, 1000)

},

// 页面上拉触底事件的处理函数

onReachBottom: function () {

},

// 用户点击右上角分享

onShareAppMessage: function () {

},

// 页面的初始数据

data: {

scrollAZ: null,

scrollNow: 0,

cityType: 'begin',

cityResults: null,

cityAZ: [{ cityName: '热门' }, { cityName: 'A' }, { cityName: 'B' }, { cityName: 'C' }, { cityName: 'D' }, { cityName: 'E' }, { cityName: 'F' }, { cityName: 'G' }, { cityName: 'H' }, { cityName: 'J' }, { cityName: 'K' }, { cityName: 'L' }, { cityName: 'M' }, { cityName: 'N' }, { cityName: 'P' }, { cityName: 'Q' }, { cityName: 'R' }, { cityName: 'S' }, { cityName: 'T' }, { cityName: 'W' }, { cityName: 'X' }, { cityName: 'Y' }, { cityName: 'Z' },],

citys: [{ cityName: '热门', cityPinYin: '', cityPY: '' }, { cityName: '上海', cityPinYin: '', cityPY: '' }, { cityName: '北京', cityPinYin: '', cityPY: '' }, { cityName: '广州', cityPinYin: '', cityPY: '' }, { cityName: '深圳', cityPinYin: '', cityPY: '' }, { cityName: '杭州', cityPinYin: '', cityPY: '' }, { cityName: 'A', cityPinYin: 'a', cityPY: 'a' }, { cityName: '阿克苏', cityPinYin: 'akesu', cityPY: 'aks' }, { cityName: '安康', cityPinYin: 'ankang', cityPY: 'ak' }, { cityName: '安陆', cityPinYin: 'anlu', cityPY: 'al' }, { cityName: '安庆', cityPinYin: 'anqing', cityPY: 'aq' }, { cityName: '鞍山', cityPinYin: 'anshan', cityPY: 'as' }, { cityName: '安顺', cityPinYin: 'anshun', cityPY: 'as' }, { cityName: '安阳', cityPinYin: 'anyang', cityPY: 'ay' }, { cityName: 'B', cityPinYin: 'b', cityPY: 'b' }, { cityName: '白城', cityPinYin: 'baicheng', cityPY: 'bc' }, { cityName: '蚌埠', cityPinYin: 'bangbu', cityPY: 'bb' }, { cityName: '保定', cityPinYin: 'baoding', cityPY: 'bd' }, { cityName: '宝鸡', cityPinYin: 'baoji', cityPY: 'bj' }, { cityName: '包头', cityPinYin: 'baotou', cityPY: 'bt' }, { cityName: '鲅鱼圈', cityPinYin: 'bayuquan', cityPY: 'byq' }, { cityName: '巴中', cityPinYin: 'bazhong', cityPY: 'bz' }, { cityName: '北戴河', cityPinYin: 'beidaihe', cityPY: 'bdh' }, { cityName: '北海', cityPinYin: 'beihai', cityPY: 'bh' }, { cityName: '北京', cityPinYin: 'beijing', cityPY: 'bj' }, { cityName: '博乐', cityPinYin: 'bole', cityPY: 'bl' }, { cityName: 'C', cityPinYin: 'c', cityPY: 'c' }, { cityName: '苍南', cityPinYin: 'cangnan', cityPY: '' }, { cityName: '沧州', cityPinYin: 'cangzhou', cityPY: 'cz' }, { cityName: '常德', cityPinYin: 'changde', cityPY: 'cd' }, { cityName: '常州', cityPinYin: 'changzhou', cityPY: 'cz' }, { cityName: '巢湖', cityPinYin: 'chaohu', cityPY: 'ch' },深邃的奥秘:揭开寒武纪的神秘面纱

我们将带您领略寒武纪的奇妙世界,那是一个充满神秘色彩的时代。请跟随我们的笔触,一同寒武纪的奥秘。

寒武纪,一个充满生命力的时代,生命在这里蓬勃兴起。当我们谈及寒武纪,不禁让人联想到地球上生命的起源和演变。这是一个充满未知的世界,每一块化石、每一处遗迹都承载着生命的秘密。

在这片广袤的海洋中,生命形态各异,丰富多彩。寒武纪的生物种类繁多,它们各具特色,形态各异。有的拥有坚硬的外壳,有的则灵活游弋在海洋中。这些生物共同谱写了一曲生命的赞歌,展现了大自然的神奇创造力。

寒武纪的海洋是一个充满竞争和演化的舞台。在这里,生物为了生存和繁衍,不断适应环境,演化出各种形态和特征。这些演化过程留下了丰富的化石记录,为我们揭示了生命的起源和演变的奥秘。

当我们深入研究寒武纪的生物化石时,不禁会被大自然的鬼斧神工所震撼。这些化石记录了寒武纪生物的生活状态和生态环境,让我们能够一窥那个时代的风貌。通过对化石的分析和研究,我们还可以了解生物的演化历程和地球环境的变化。

寒武纪的奥秘不仅仅局限于生物和化石,还涉及到地质、气候等多个领域。这个时代的地球是一个充满变化和不确定性的世界,各种地质活动和气候变化都对生物演化产生了深远影响。

我们试图揭开寒武纪的神秘面纱,带您领略这个时代的奇妙世界。让我们一起生命的起源和演变,感受大自然的神奇创造力。在这个充满未知和神秘的时代,我们不禁会对未来的之路充满期待和憧憬。

(注:以上内容纯属虚构,如有雷同,纯属巧合。)

结束语:寒武纪的奥秘令人着迷,让我们一起踏上这段之旅,感受大自然的鬼斧神工和生命的奇妙旅程。

上一篇:jsp 生成验证码代码 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by