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

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

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+mysql实现无限分类实例详解

    PHP+MySQL实现无限分类实例详解 概述 无限分类,也称为多级分类或者树形分类,是指类别之间存在着上下级关系,每个类别下面可以包含无数个子类别,基本上可以无限扩展,因此被称为无限分类。在Web开发的过程中,无限分类是非常常见的一种数据结构形式,如商品分类、文章分类等。 在这里,我们将结合PHP和MySQL来实现无限分类。在展示无限分类的同时,还将涉及到相…

    PHP 2023年5月27日
    00
  • PHP实现导出excel数据的类库用法示例

    下面是关于“PHP实现导出excel数据的类库用法示例”的完整攻略: 一、前言 在实际的Web开发过程中,经常需要导出excel数据,因为excel数据具备方便查询、可视化分析和绘制图表等特点。本攻略主要介绍如何利用PHP工具箱来实现导出excel数据的功能。 二、准备工作 以下两个步骤需要循序渐进地进行,确保PHP工具箱和依赖文件库都准备完毕,才能正确地运…

    PHP 2023年5月26日
    00
  • 用PHP实现 上一篇、下一篇的代码

    下面是详细的攻略,包含代码实现和示例说明: 1. 获取文章列表 为了实现文章的上一篇和下一篇功能,我们需要先获取文章列表,并根据文章的发布时间或者ID等信息进行排序。可以使用数据库或者文件存储,这里以MySQL数据库为例。 示例代码: // 连接数据库 $servername = "localhost"; $username = &quo…

    PHP 2023年5月27日
    00
  • php购物车实现方法

    PHP购物车的实现方法主要包含以下几个步骤: 创建购物车页面 首先,需要创建一个购物车页面,其中包含展示购物车商品信息的表格和相应的操作按钮,如“添加到购物车”、“删除”、“更新数量”等。 创建商品信息和操作按钮 在页面中,需要创建商品信息和操作按钮。商品信息一般包含商品名称、商品图片、商品价格和库存等信息。操作按钮一般包含“添加到购物车”、“删除”、“更新…

    PHP 2023年5月27日
    00
  • PHP定时执行计划任务的多种方法小结

    PHP 定时执行计划任务的多种方法小结 在 web 开发过程中,有些程序需要在特定的时间执行一些任务,比如在每天凌晨重新生成缓存、导出数据、删除过期数据等。这个时候就需要使用定时执行计划任务的方法来实现。 本文将介绍 PHP 定时执行计划任务的几种方法,并提供示例说明。 1. 使用 Cron Job Cron Job 是一种常用的自动任务管理工具,它可以在指…

    PHP 2023年5月27日
    00
  • php curl发起get与post网络请求案例详解

    PHP Curl发起GET与POST网络请求案例详解 什么是Curl Curl是一个命令行工具和库,用于实现客户端和服务器之间的数据传输。Curl支持绝大多数的协议和网络协议,包括HTTP、FTP、POP3、IMAP、SCP、SMTP等。Curl是一个非常强大的工具,也被广泛应用于各个领域的开发工作中。 Curl也是PHP的一个扩展,PHP Curl可以方便…

    PHP 2023年5月27日
    00
  • PHP小程序自动提交到自助友情连接

    针对“PHP小程序自动提交到自助友情连接”的完整攻略,我将从以下几个方面进行讲解: 配置友情连接自助提交页面 编写自动提交代码并测试 定时自动提交友情连接 1. 配置友情连接自助提交页面 首先,我们需要为网站配置一个友情连接自助提交页面,让其他站点可以通过该页面提交友情连接信息。一般情况下,我们可以在网站底部添加一个友情链接入口,点击进入该页面即可进行友情链…

    PHP 2023年5月23日
    00
  • PHP在字符串中查找指定字符串并删除的代码

    你好,让我为你讲解在PHP中如何在字符串中查找指定的字符串并删除。 方法一:使用str_replace函数 PHP中内置的str_replace函数可以在字符串中查找指定字符串并替换为另一个字符串。当需要删除指定字符串时,只需要将指定字符串替换为空字符串即可。 示例一: $str = "Hello, World!"; // 待修改的字符串…

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