如何通过jQuery将用户ID传递给Node.js实现好友请求功能
搞定好友请求里的接收方ID获取问题
嘿,我注意到你已经把接收请求方的用户ID存在按钮的title属性里了,用jQuery获取这个值其实很直接,咱们结合你的场景来写代码:
核心实现代码
首先给按钮绑定点击事件,然后通过attr()方法拿到title属性里的ID:
// 给添加好友按钮绑定点击事件 $('#addFriendBTN').click(function() { // 获取当前按钮title属性里的接收方用户ID const receiverUserId = $(this).attr('title'); // 打印验证一下,确认拿到了正确的ID console.log('要发送请求的用户ID:', receiverUserId); // 接下来就可以结合登录用户的信息发起请求了 // 比如发AJAX到后端接口 $.post('/your-friend-request-api', { senderId: req.user.id, // 发起方ID,你已经通过req.user拿到了 receiverId: receiverUserId // 刚获取的接收方ID }) .done(function(response) { console.log('好友请求发送成功!'); // 这里可以加个UI反馈,比如把按钮改成“请求已发送”并禁用 $(this).text('请求已发送').prop('disabled', true); }) .fail(function(err) { console.error('发送请求失败:', err); }); });
多按钮场景的补充
如果你的页面上有多个添加好友按钮(比如用户列表里每个用户都有一个),那建议把按钮的ID改成类名,比如button.btn.btn-primary.btn-block.addFriendBTN(title = ${user.id}) Add friend,然后用类选择器绑定事件,这样每个按钮都能正确拿到对应用户的ID:
$('.addFriendBTN').click(function() { const receiverUserId = $(this).attr('title'); // 后续逻辑和上面一样就行 });
排查小技巧
如果你之前打印的时候出问题,可以先检查这两点:
- 打开浏览器开发者工具,查看按钮的HTML结构,确认
title属性确实渲染出了正确的用户ID; - 确认jQuery已经在页面里正确加载了,避免出现
$ is not defined的错误。
内容的提问来源于stack exchange,提问作者J.G.Sable
相关产品推荐
相关产品推荐

