洛洛不觉 2023-07-18 15:33 采纳率: 50%
浏览 27

关于#前端#的问题,如何解决?

在前端页面点击立即参加按钮时或是点击查看详情按钮时, “ content:ctx+"/act/actDetail/"+activity.ac_id”无法根据当前所选中的数据获取到当前数据的id值进行值得传输,layUI的弹出层获取不到对应的信息

---ssm中的代码
   @GetMapping("/list")
    @ResponseBody
    public List<Activity> getAllActivities() {
        return tbActivityService.getAllActivities();
    }

<script>
    layui.use(['element', 'layer'], function(){
        var element = layui.element;
        var layer = layui.layer;
        var activityList = $("#activityList");

        $.ajax({
            url: ctx + "/act/list",
            type: "GET",
            dataType: "json",
            success: function(data) {
                for (var i = 0; i < data.length; i++) {
                    var activity = data[i];
                    var card = $("<div>").addClass("card-container").addClass("layui-col-md4");
                    var inner = $("<div>").addClass("card-outer").addClass("layui-card");
                    var header = $("<div>").addClass("card-header").addClass("layui-card-header").text(activity.ac_name);
                    var body = $("<div>").addClass("card-body").addClass("layui-card-body");
                    var startTime = $("<p>").text("活动日期:" + formatTime(activity.ac_s_date)+" 至 "+ formatTime(activity.ac_e_date));
                    var participantCount = $("<p>").text("活动剩余:" + activity.participantCount+"人");
                    var status = $("<p>").text("状态:" + activity.status);
                    var attendedCount=$("<span class='layui-badge layui-bg-green'></span>").text("已有"+activity.attendedCount+"人参与");
                    var btnGroup = $("<div>").addClass("card-buttons").addClass("layui-btn-group");
                    var detailBtn = $("<button>").addClass("card-button").addClass("layui-btn layui-btn-warm layui-btn-sm").text("活动详情").css({"margin-bottom": "10px","margin-top": "10px"});
                    var joinBtn = $("<button>").addClass("card-button").addClass("layui-btn layui-btn-normal layui-btn-sm").text("立即参加").css({"margin-bottom": "10px", "margin-top": "10px"});


                    // 根据活动状态设置按钮行为<object
                    if (activity.status === "活动正在进行中") {
                        detailBtn.on("click", function() {
                            var editIndex = top.layer.open({
                                type:2,
                                title:"活动详情",
                                area:['1000px','700px'],
                                skin:  'layui-layer-molv',
                                closeBtn: 2, //关闭图标风格二
                                anim: 'slideUp',//从下边缘往上
                                shadeClose: true,
                                btn: [ '关闭'], //只是为了演示
                                success: function(){layer.closeAll()},
                                content:ctx+"/act/actDetail/"+activity.ac_id
                            });

                        });
                         //  如果活动人数小于已参与人数则点击立即参加可以正常填写信息参加活动,如果活动人数等于已参与人数则点击立即参加按钮会出现提示该活动已满请查看其他活动
                        if (activity.participantCount > 0) {
                            joinBtn.on("click", function() {
                                window.location.href = join.jsp+ac_id;
                                // var editIndex = top.layer.open({
                                //     type:2,
                                //     title:"填写参加信息",
                                //     area:['900px','500px'],
                                //     skin:  'layui-layer-molv',
                                //     closeBtn: 2,
                                //     anim: 'slideUp',
                                //     shadeClose: true,
                                //     btn: [ '关闭'],
                                //     success: function(){layer.closeAll()},
                                //     content:ctx+"/act/join/"+activity.ac_id
                                // });
                            });
                        } else if (activity.participantCount == 0){
                            joinBtn.on("click", function() {
                                layer.msg("该活动已满,请查看其他活动!");
                            });
                            joinBtn.addClass("layui-btn-disabled");
                        }
                    } else if (activity.status === "活动正在预热中") {
                        detailBtn.on("click", function() {
                            var editIndex = top.layer.open({
                                type:2,
                                title:"活动详情",
                                area:['900px','700px'],
                                skin:  'layui-layer-molv',
                                closeBtn: 2, //关闭图标风格二
                                anim: 'slideUp',//从下边缘往上
                                shadeClose: true,
                                btn: [ '关闭'], //只是为了演示
                                success: function(){layer.closeAll()},
                                content:ctx+"/act/actDetail/"+activity.ac_id //controller中只是跳转jsp 所以这里不用success判断
                            });
                        });
                        joinBtn.on("click", function() {
                            layer.msg("该活动还未开启,敬请期待!");
                        });
                        joinBtn.addClass("layui-btn-disabled");
                    } else if (activity.status === "活动已结束") {
                        detailBtn.on("click", function() {
                            var editIndex = top.layer.open({
                                type:2,
                                title:"活动详情",
                                area:['1000px','700px'],
                                skin:  'layui-layer-molv',
                                closeBtn: 2, //关闭图标风格二
                                anim: 'slideUp',//从下边缘往上
                                shadeClose: true,
                                btn: [ '关闭'], //只是为了演示
                                success: function(){layer.closeAll()},
                                content:ctx+"/act/actDetail/"+activity.ac_id //controller中只是跳转jsp 所以这里不用success判断
                            });
                        });
                        joinBtn.on("click", function() {
                            layer.msg("该活动已结束,可查看其他类似活动哦!");
                        });
                        joinBtn.addClass("layui-btn-disabled");
                    }

                    btnGroup.append(detailBtn, joinBtn);
                    body.append(startTime, status, participantCount, attendedCount, btnGroup);
                    inner.append(header, body);
                    card.append(inner);
                    activityList.append(card);
                }
                initCardEffects();
            }
        });


        function initCardEffects() {
            // 设置卡片样式
            $(".card-container").css({
                "box-shadow": "5px 5px 5px 5px rgb(172,175,177)",
                "border-radius": "1%"
            });

            // 设置鼠标悬停动画效果
            $(".card-container").hover(function() {
                $(this).addClass("hover-effect");
            }, function() {
                $(this).removeClass("hover-effect");
            });
        }

        // 格式化时间
        function formatTime(timestamp) {
            var date = new Date(timestamp);
            var year = date.getFullYear();
            var month = date.getMonth() + 1;
            var day = date.getDate();
            return year + '-' + month + '-' + day;
        }
    });
</script>

 <input type="hidden" name="id" value="${activity.ac_id}"/>
  <div class="layui-form-item">
    <label class="layui-form-label">活动主题</label>
    <div class="layui-input-inline">
      <input class="layui-input" type="text" name="ac_name" id="ac_name"lay-affix="clear" autocomplete="off" required
             lay-verify="required" placeholder="请填写活动主题" value="${activity.ac_name}" disabled>
    </div>
  </div>

img

img

  • 写回答

2条回答 默认 最新

  • DaenCode 后端领域新星创作者 2023-07-18 16:22
    关注

    你没有获取那个id值,url里也没有拼接这个id

    评论

报告相同问题?

问题事件

  • 创建了问题 7月18日

悬赏问题

  • ¥15 Fluent UDF 编写
  • ¥15 xcode开发的macos应用,如何使窗口居中显示?
  • ¥20 统信uos升级apt后启动失败
  • ¥15 求指导储层饱和度及含水率测井解释
  • ¥200 建三维地震工区写入sgy到指定目录
  • ¥30 靶向捕获测序探针设计自学
  • ¥15 写代码写代码单片机代码写代码写数字按键代码
  • ¥15 django按照距离进行排序
  • ¥15 (标签-微信|关键词-微信公众号)
  • ¥15 matlab中mjs用不了