微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)

yizhihongxing

下面是 "微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)" 的完整攻略:

1. 制作搜索框样式

首先,在小程序页面的wxml文件中,可以添加一个input标签,来实现搜索框的样式。一般情况下,搜索框的样式包含一个输入框和一个搜索按钮,可以像下面这样定义:

<view class="search-box">
  <input placeholder="输入关键字搜索" bindconfirm="search" />
  <button bindtap="search"><image src="/images/search.png"/></button>
</view>

其中,search属性绑定的是当用户点击搜索按钮时触发的事件处理函数,属性值为search;bindconfirm属性则绑定的是当用户点击键盘上的完成按钮时触发的事件处理函数,属性值为search。这两个属性都可以绑定同一个事件处理函数,实现同样的效果。

在样式文件中,可以定义search-box样式名:

.search-box{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px;
  border-radius: 5px;
  background: #e0e0e0;
  height: 50rpx;
}

.search-box input{
  flex: 1;
  font-size: 28rpx;
  padding-left: 10rpx;
  border: none;
  outline: none;
}

.search-box button{
  width: 80rpx;
  height: 50rpx;
  border: none;
  background: none;
}

2. 跳转到搜索结果页面

在完成搜索框的样式后,就需要实现跳转功能,将用户输入的关键字发送到后台进行搜索,并将搜索结果展示给用户。这里我们可以利用小程序提供的页面跳转API:navigateTo。

在事件处理函数search中,可以获取用户输入的关键字,然后将关键字作为参数传递给搜索结果页面searchResult。示例如下:

search: function(e){
  let keyword = e.detail.value;
  wx.navigateTo({
    url: '/pages/searchResult/searchResult?keyword=' + keyword,
  })
}

其中,通过e.detail.value可以获取到用户输入的关键字。在跳转页面时,将关键字作为url参数传递给searchResult页面。

3. 在搜索结果页面展示搜索结果

在searchResult页面中,需要获取到用户传递过来的关键字,并调用后台API进行搜索,将搜索结果展示给用户。

Page({
  data: {
    keyword: '',
    searchResult: [],
  },

  onLoad: function(options) {
    // 获取用户输入的关键字
    this.setData({
      keyword: options.keyword,
    })
    // 调用搜索API,并将搜索结果存储到searchResult中
    wx.request({
      url: 'http://localhost:3000/search',
      method: 'GET',
      data:{
        keyword: options.keyword,
      },
      success: (res)=> {
        this.setData({
          searchResult: res.data,
        })
      },
      fail: (err)=> {
        console.log(err);
      }
    })
  },

})

在onLoad函数中,首先获取用户传递的关键字,然后调用相关的后台API进行搜索,并将结果存储到data中的searchResult中。在searchResult页面中使用wx:for标签遍历searchResult,将搜索结果展示给用户即可。

通过以上代码实现,用户可以输入关键字进行搜索,跳转到关键字对应的搜索结果页面,并查看搜索结果。

示例代码见 searchDemo

4. 搜索框样式示例

在这里,我提供两种不同的搜索框样式,供大家参考。

样式一: 带清空按钮的搜索框

<view class="search-input-box">
  <image src="/images/search.png" class="search-icon"></image>
  <input class="search-input" placeholder="请输入搜索内容" bindinput="onInput" value="{{keyword}}" placeholder-style="color:#999;"></input>
  <image wx:if="{{keyword}}" src="/images/cancel.png" class="cancel-icon" bindtap="clearInput"></image>
  <button class="search-btn" bindtap="clickSearch">搜索</button>
</view>

样式二: 带搜索框动画的搜索框

<view class="search-box" bindtap="onSearchBoxClick">
  <image src="/images/search.png" class="search-icon"></image>
  <view class="search-input-box">
    <input class="search-input" placeholder="请输入搜索内容" bindinput="onInput" value="{{keyword}}" placeholder-style="color:#999;"></input>
    <image wx:if="{{keyword}}" src="/images/cancel.png" class="cancel-icon" bindtap="clearInput"></image>
  </view>
</view>

以上是 "微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)" 的详细攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能) - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • php 字符转义 注意事项

    当使用 PHP 处理字符串时,可能需要对其中的特殊字符进行转义。这些特殊字符包括单引号、双引号、反斜杠等。在字符串中使用这些字符时,我们需要使用转义字符来告诉 PHP 框架这是字符而不是语法。以下是在 PHP 中进行字符转义的注意事项和示例说明的完整攻略。 PHP 字符转义的方法 在 PHP 中,我们可以使用反斜杠 () 来转义字符。下面是一些常见的特殊字符…

    PHP 2023年5月26日
    00
  • 包你说是什么?微信小程序包你说如何发语音口令红包?

    包你说是什么? 包你说是微信小程序中的一个功能,它允许用户发语音口令红包。具体来说,用户可以在小程序内录制一段语音,然后为其设置一个金额,最后生成一个红包口令。其他用户在输入这个口令后,就可以领取这个红包。 如何使用包你说发语音口令红包? 打开微信小程序“包你说”。 点击页面中间的“我要发红包”按钮。 在弹出的页面中,录制一段语音,并为其设置一个金额。 等待…

    PHP 2023年5月23日
    00
  • php实现表单提交上传文件功能

    实现表单提交上传文件功能,需要使用PHP的文件上传功能。本攻略将从以下几点来详细讲解如何实现: 设置表单提交方式为POST,并添加enctype=”multipart/form-data”属性 PHP接收文件并保存 对上传的文件进行判断和处理 1. 设置表单提交方式为POST,并添加enctype属性 在HTML表单中,需要将表单的提交方式设置为POST,并…

    PHP 2023年5月26日
    00
  • c# List find()方法返回值的问题说明(返回结果为对象的指针)

    下面是详细讲解“c# List find()方法返回值的问题说明(返回结果为对象的指针)”的完整攻略。 问题说明 在使用C#中的List集合时,我们经常会用到find()方法来查找特定的对象,这个方法经常会被误解,造成返回值的问题,这里详细讲解一下。 当我们在C#中使用List的find()方法来查找特定的对象时,返回的结果是符合条件的对象,而不是对象的指针…

    PHP 2023年5月27日
    00
  • php实现文件管理与基础功能操作

    下面是详细讲解“PHP实现文件管理与基础功能操作”的攻略: 1. 简介 文件管理是 web 应用程序的核心要素之一。在 PHP 中,可以通过访问文件系统来实现文件管理功能。文件管理功能主要包括以下基础操作: 创建目录 创建文件 删除目录或文件 读取文件内容 写入文件内容 2. 实现文件管理功能 2.1 创建目录 可以通过 PHP 内置函数 mkdir() 来…

    PHP 2023年5月27日
    00
  • 让CodeIgniter数据库缓存自动过期的处理的方法

    CodeIgniter框架提供了一个非常强大的数据库缓存功能,它可以大幅度提高应用程序的性能,降低数据库服务器的负载。然而,如果不采取任何措施,缓存的过期时间将无法自动更新,导致缓存内容失效,这将会影响应用程序的可用性。因此,让CodeIgniter数据库缓存自动过期是非常必要的。 下面是让CodeIgniter数据库缓存自动过期的处理的方法的完整攻略: 步…

    PHP 2023年5月23日
    00
  • PHP观察者模式原理与简单实现方法示例

    下面就详细讲解一下“PHP观察者模式原理与简单实现方法示例”的完整攻略。 什么是观察者模式? 观察者模式是一种软件设计模式,通过定义一种一对多的依赖关系,以便于多个对象同时处理某一个任务。在该模式中,一个被观察的主题(即可观察者)维护一组观察者集合,它们依赖于该主题。当主题状态发生改变时,它会自动通知观察者们,使得它们能够自动更新自己的状态。 观察者模式的实…

    PHP 2023年5月27日
    00
  • PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码

    下面是创建文件并向其中写入数据的完整攻略及示例。 1. 创建文件并向文件中写入数据 1.1 使用 fopen 函数创建文件 使用 fopen 函数可以创建一个新文件,函数原型为: fopen($filename, $mode); 其中 $filename 是要创建的文件名,可以包括相对或绝对路径;$mode 是打开文件的模式,具体可选的模式有以下几种: r …

    PHP 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部