善良公社—JS加我好友

  善良公社中有项“”加我好友“的功能,刚开始点击的时候一直加不上。这里分享一下我的做法。

  Form表单作为传参数使用

  

  <form id="Form1">
   <input id="Hidden1" name="userid" type="hidden" />
     <input id="Hidden2" name="test" type="hidden"  />
   </form>

Web页面是用Repeater控件来绑定数据

<asp:Repeater ID="userinfo" runat="server">
<ItemTemplate>                                                                                                          <tbody>                                                                                                            <tr>
       <td>                                                                                                                 <a href="#" id="addFriend" οnclick="makeFriends(<%#Eval("UserID") %>);return false;">加为好友
       </a>
      </td> 
     </tr>

刚开始的时候在<a>标签中用title属性来绑定了UserID,但是只能第一次加好友成功,其余加其他人都默认是同样的一个UserID,实在没办法了,让小崔哥指点了一下,就是在事件中传递参数。

Js中写法是

function makeFriends(friendid) {
//获取当前登陆用户名字
        var val = "<%= Session["UserName"]==null?"":Session["UserName"] %>"; 
       //获取当前登陆的用户ID
        var id = '<%=Session["UserID"] %>';
        if (val == "") {
            alert("请先登录之后,再进行相关的操作");
            return false;
        } else {
            document.getElementById("test").value = "add"  //表示处理程序中的类型是添加好友
            test = document.getElementById("test").value;   //
            document.getElementById("userid").value =friendid //获取加好友的ID
            userid = document.getElementById("userid").value;
            //登陆的ID和添加用户的ID一致则判断
            if (id ==friendid) { 
                alert("不能添加本人为好友!")
                return;
            }
            $.messager.confirm("提示", "你要添加他为好友吗?", function (r) {
                if (r) {
                    //提交表单
                    $.ajax({
                        type:"post",
                        url: "AddFriend.ashx?test=" + test + "&userid="+userid,  //传递给一般处理程序
                       
                        //判断结果是否正确
                        success: function (data) {
                            if (data == "T") {
                                alert('恭喜您,添加好友成功!');
                            }
                            else {
                                if (data == "A") {
                                    alert("该好友已经添加!");
                                } else
                                {
                                    alert('添加好友失败,请重新操作!');
                                }
                            }
                        },
                        error: function (XmlHttpRequest, textStatus, errorThrown) {
                            alert(XmlHttpRequest.responseText);
                        }
                    })
                }
            })
        }
}

一般处理程序中

public void ProcessRequest(HttpContext context)
        {
            string command = context.Request.QueryString["test"];//标记是事件的类型:增删改
            if (command == "add")
            {//调用添加方法
                Add(context);
            }

        }

        /// <summary>
        /// 添加好友
        /// </summary>
        /// <param name="context"></param>
        public void Add(HttpContext context)
        {
            FriendConnectionEntity enfcon = new FriendConnectionEntity();//实例化一个实体类
            enfcon.FriendID = context.Request.QueryString["userid"];//前台传的标示值,选择的用户ID
            if (context.Session["UserID"] == null)
            {
                context.Response.Write("F");
            }
            else
            {
                enfcon.UserID = context.Session["UserID"].ToString();
            }
            enfcon.State = "待定";
            FriendConnectionBLL fcon = new FriendConnectionBLL();//实例化一个B层
            try
            {
                //判断该好友是否已经添加
                if (fcon.IsExistFriend(enfcon))
                {
                    context.Response.Write("A");  //该好友已经添加过
                }
                else
                {
                    //好友没有添加过,查看是否添加成功
                    if (fcon.Add(enfcon))
                    {
                        context.Response.Write("T");
                    }
                    else
                    {
                        context.Response.Write("F");
                    }
                }
            }

            catch (Exception ex)
            {

            }
        }

 这样加为好友的功能就完美实现了。

这样的一个小功能折腾了半天,知道了在事件中也可以传递参数,了解了一下ajax的用法,和传递一般处理程序并返回值的过程。其实学到的东西也蛮多的。善良公社1.0即将完本,整理吸收一下大家的知识,开始进行下一步的学习。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 36
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
综合小区管理系统管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、车位管理、车位分配管理、出入管理、字典管理、房屋管理、物业费缴纳管理、公告管理、物业人员投诉管理、我的私信管理、物业人员管理、用户管理、管理员管理。用户的功能包括管理部门以及部门岗位信息,管理招聘信息,培训信息,薪资信息等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 综合小区管理系统管理系统可以提高综合小区管理系统信息管理问题的解决效率,优化综合小区管理系统信息处理流程,保证综合小区管理系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理综合小区管理系统信息,包括出入管理,报修管理,报修管理,物业费缴纳等,可以管理操作员。 出入管理界面,管理员在出入管理界面中可以对界面中显示,可以对招聘信息的招聘状态进行查看,可以添新的招聘信息等。报修管理界面,管理员在报修管理界面中查看奖罚种类信息,奖罚描述信息,新增奖惩信息等。车位管理界面,管理员在车位管理界面中新增。公告管理界面,管理员在公告管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添新公告的信息,可以编辑公告信息,删除公告信息。
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值