小程序实现根据id进行页面跳转(简陋的、不用后端的方法)

第一个

1、给每个用户头像添加点击事件

wxml

<image src="{{item.r_img}}" mode="widthFix" bindtap="enterDetail" data-id="{{item.r_id}}" data-index="{{item.index}}"></image>

js的data

roleList:[{
        r_id:1,
        r_name:"小白鼠",
        r_img:"/images/num/3.jpg",
        r_content:"路边的小狗超可爱~~~",
        biao_o:"大一",
        biao_t:"Lv10",
        more:"/images/common/more-horizontal-outline.png",
        time:"2023-06-18 08:30",
        zan:"/images/common/heart-outline.png",
        ping:"/images/common/message-square-outline.png",
        num1:"0",
        num2:"2",
        testImage:[
          "/images/num/0.jpg",
          "/images/num/1.jpg",
          "/images/num/2.jpg"
        ]
      },{r_id:2,
        r_name:"不做出小程序不改名",
        r_img:"/images/icon/smiling-face.png",
        r_content:"今天看见数计学院的路边有蛇,大家小心!!!!",
        biao_o:"大二",
        biao_t:"Lv10",
        more:"/images/common/more-horizontal-outline.png",
        time:"2024-05-18 08:30",
        zan:"/images/common/heart-outline.png",
        ping:"/images/common/message-square-outline.png",
        num1:"0",
        num2:"2",
        testImage:[
          "/images/num/4.jpg",
          "/images/num/5.jpg",
          "/images/num/6.jpg"
        ]},
        {r_id:3,
          r_name:"帅气的我你不配",
          r_img:"/images/common/at-outline.png",
          r_content:"表白今天操场上的女孩子,求联系方式哇!",
          biao_o:"大四",
          biao_t:"Lv100",
          more:"/images/common/more-horizontal-outline.png",
          time:"2024-05-18 08:30",
          zan:"/images/common/heart-outline.png",
          ping:"/images/common/message-square-outline.png",
          num1:"0",
          num2:"2",
          testImage:[
            "/images/num/8.jpg",
            "/images/num/9.jpg",
            "/images/num/0.jpg"
          ]}
      ]
  

 js的方法

//根据id跳转对应详情页面
   enterDetail:function(e){
    console.log(e)
    let index=e.currentTarget.dataset.id
    console.log(index)
    if(index==1){
      wx.navigateTo({
      url: '/pages/pinglun/pinglun?id='+this.data.roleList[index].id,
    })
    }else if(index==2){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.roleList[index].id,
      })
    }
}

实现效果

点第一个头像,进入该界面

 

 

点第二个头像,进入另外一个界面

 

 第二个

wxml

<!-- 搜索结果显示框 -->
<scroll-view wx:if="{{focus}}" class="scrollview" scroll-y="true" wx:key="index">
  <view wx:for="{{list}}" wx:key="name">
    <view class="scrollItem" bindtap="enterDetail" data-id="{{item.id}}" data-index="{{item.index}}">
    <text  class="font1" space="nbsp">   {{item.name}}</text>
    <text class="font2"space="nbsp">{{item.num}}   </text>
    </view>
  </view>
</scroll-view>

js

  data:{
list: [{'name':'兼职外快','num':'10个',id:"1"},{'name':'失物招领','num':'15个',id:"2"},{'name':'我爱兼职','num':'5个',id:"3"},{'name':'结伴学习','num':'20个',id:"4"},{'name':'丢失证件','num':'20个',id:"5"},{'name':'赚钱兼职','num':'10个',id:"6"},{'name':'捞人交友','num':'15个',id:"7"}],	//这是搜索到的结果
    list2: [{'name':'兼职外快','num':'10个',id:"1"},{'name':'失物招领','num':'15个',id:"2"},{'name':'我爱兼职','num':'5个',id:"3"},{'name':'结伴学习','num':'20个',id:"4"},{'name':'丢失证件','num':'20个',id:"5"},{'name':'赚钱兼职','num':'10个',id:"6"},{'name':'捞人交友','num':'15个',id:"7"}],	//这是所有可供查询的记录
},


focusHandler(e){
    this.setData({focus:true});
  },
  cancelHandler(e)
  {
    this.setData({focus:false});
  },
  query(e){
   
    this.setData({
      inputValue: e.detail.value
  })  //首先回显输入的字符串
    //实现搜索的功能
    var list = this.data.list2;		//先把第二条json存起来
    var list2 = [];		//定义一个数组
    //循环去取数据
    for(var i=0;i<list.length;i++){
      var string = list[i].name;
      //查询json里的name是否包含搜索的关键词,如果有就把他装进list2数组
      if(string.indexOf(e.detail.value) >= 0){
        list2.push(list[i]);
      }
    }
    //到这里list2就已经是你查出的数据
    //如果输入的关键词为空就加载原来的全部数据,不是空就加载搜索到的数据
    if(e.detail.value == ""){
      //加载全部
      this.setData({
        list: list
      })
    } else {
      this.setData({
        list: list2
      })
    }
  },
  //根据id跳转对应详情页面
  enterDetail:function(e){
    
    console.log(222)
    let index=e.currentTarget.dataset.id
    console.log(index)
    if(index==1){
      wx.navigateTo({
      url: '/pages/detail1/detail1?id='+this.data.list2[index].id,
    })
    }else if(index==2){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.list2[index].id,
      })
    }else if(index==3){
      wx.navigateTo({
        url: '/pages/huifu/huifu?id='+this.data.list2[index].id,
      })
    }else if(index==4){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.list2[index].id,
      })
    }else if(index==5){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.list2[index].id,
      })
    }else if(index==6){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.list2[index].id,
      })
    }else if(index==7){
      wx.navigateTo({
        url: '/pages/detail/detail?id='+this.data.list2[index].id,
      })
    }
    
  },

wxss

.scrollview{
  width: 690rpx;
  height: 150rpx;
  margin-left:5rpx;
  margin-top: 50rpx;
  /* background: rgba(163, 84, 84, 0.5); */
  border: 3rpx solid gainsboro;
}
.scrollItem{
  width: 690rpx;
  height: 50rpx;
  margin-left: -5rpx;
  border: cadetblue 2rpx solid;
}
.font2{
  font-size: 22rpx;
  /* margin-right: 10rpx; */
  margin-left: 450rpx;
}

效果

 点击不同行,跳转不同详情页面

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在PHP中发起Ajax请求,可以使用内置的`XMLHttpRequest`对象或者使用现代的`fetch` API。以下是使用`XMLHttpRequest`对象的示例: ```php // 前端代码 <script> // 创建XMLHttpRequest对象 var xhr = new XMLHttpRequest(); // 设置请求的方法和URL xhr.open("POST", "your_php_file.php", true); // 设置请求头,如果有需要可以设置 xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // 监听请求完成事件 xhr.onload = function() { if (xhr.status === 200) { // 请求成功,可以在此处处理返回的数据 console.log(xhr.responseText); } else { // 请求失败,可以进行相应的处理 console.log("请求失败"); } }; // 发送请求,可以传递参数 xhr.send("param1=value1&param2=value2"); </script> ``` 在上面的示例中,前端通过`XMLHttpRequest`对象发送一个POST请求到指定的PHP文件(`your_php_file.php`),并传递了一些参数。在PHP文件中,你可以接收这些参数,并调用相应的后端PHP方法。 ```php // 后端代码(your_php_file.php) <?php // 接收前端传递的参数 $param1 = $_POST['param1']; $param2 = $_POST['param2']; // 调用相应的后端PHP方法 your_php_method($param1, $param2); // 返回响应给前端(可选) echo "请求已完成"; ?> ``` 在上述的后端PHP代码中,你可以根据实际需求调用相应的后端PHP方法,并在必要时返回响应给前端。 请注意,以上示例只是简单演示了如何发起AJAX请求,并调用后端PHP方法。具体的实现可能会根据你的业务逻辑和需求有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值