Layer弹出层动态获取数据

前一阵子做了一个简单的小项目,用到了Layer弹出层(弹出层的用法就不多加赘述了,官网上都有详细的介绍,这里附上网址http://layer.layui.com/),当时前后台合页面的时候就出现了一个问题,弹出层总是获取不到数据,不过后面还是和同学们一起解决了,希望能帮助到大家。

之前的代码:

<a id="func11" onclick="func11();">点击查看a>
function func11() {
        console.log($.cookie("id"));
        //iframe窗
        layer.open({
            type: 2,
            title: false,
            shade: [0.5],
            title: '商品简介',
            shadeClose: true,
            shade: 0.5,
            skin:'demo-class',
            maxmin: true, //开启最大化最小化按钮
            area: ['1000px', '660px'],
            shift: 2,
            content: 'product.jsp?id=<%=rs.getInt(“id”)%>', //iframe的url,
        });
}

错误:id号传不过去,页面跳转之后接收的id不正确,所以显示的页面不正确。

错误原因:变量的作用域有问题。在上面的rs不能传到func11()方法里面,所以传递的参数有问题。

解决方法:在func11()函数中添加一个参数,将id这个参数在点击事件里添加进去。

修改后的代码:

<a id="func11" onclick="func11(<%=rs.getInt(“id”)%>);">点击查看a>
function func11(x) {
        $.cookie("id",x);
        console.log($.cookie("id"))
        //iframe窗
        layer.open({
            type: 2,
            title: false,
            shade: [0.5],
            title: '商品简介',
            shadeClose: true,
            shade: 0.5,
            skin:'demo-class',
            maxmin: true, //开启最大化最小化按钮
            area: ['1000px', '660px'],
            shift: 2,
            content: 'product.jsp?id=' + $.cookie("id"), //iframe的url
        });
    }

你可能感兴趣的:(项目问题及解决办法)