javascript - 在js严格模式情况下"use strict"; var的局部变量给出的值如何传递到下一个函数里面?
黄舟
黄舟 2017-04-11 11:59:00
[JavaScript讨论组]
$("#score").on("click", function () {
    //信息框
    var str = ['较差', '一般', '良好', '不错', '极佳'];
    setTimeout(function () {
        $(document.body).on("click", ".star_score a", function () {
            var num = $(this).index();
            var as = $(".star_score a");
            for (var i = 0; i <= num; i++) {
                as.eq(i).attr("class", "clibg");
            }
            for (var i = num + 1, len = as.length - 1; i <= len; i++) {
                as.eq(i).attr('class', '');
            }
            var ns = $(".clibg").length;  //在这里我要把ns传递到下面的回调函数里,请问怎么做?
            $(".comment").text(str[ns - 1]);
            console.log(ns); 
        })
        
    }, 1000);
    layer.open({
        content: '

' + '

给我打个分吧

' + '

' + ' ' + ' ' + ' ' + ' ' + ' ' + '

' + '

' + '

', btn: '提交', yes: function (index) { layer.close(index) //这里是提交才会执行 if (ns) { //这里ns的值没有收到上面的局部变量。求万能的大神给出解决方法。 $.ajax({ url: praiseURL, type: 'post', data: { key: "mooc", toKen: toKen, memberId: memberId, courseId: courseId, grade: ns }, success: function success(msg) { console.log() //提示 layer.open({ content: '你已评过分!', skin: 'msg', time: 2 //2秒后自动关闭 }); } }) } else { layer.open({ content: '尚未评分!', skin: 'msg', time: 2 //2秒后自动关闭 }); } } }); })

**var ns = $(".clibg").length; //在这里我要把ns传递到下面的回调函数里,请问怎么做?

if (ns) { //这里ns的值没有收到上面的局部变量。求万能的大神给出解决方法。**

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
高洛峰
  
$("#score").on("click", function () {
    //定义事件监听
    $(document.body).on("click", ".star_score a", function () {
                var num = $(this).index();
                var as = $(".star_score a");
                for (var i = 0; i <= num; i++) {
                    as.eq(i).attr("class", "clibg");
                }
                for (var i = num + 1, len = as.length - 1; i <= len; i++) {
                    as.eq(i).attr('class', '');
                }
                var ns = $(".clibg").length;  //在这里我要把ns传递到下面的回调函数里,请问怎么做?
                $(".comment").text(str[ns - 1]);
                $("#starttwo").data("score",ns);
                console.log(ns); 
    });
      
    //信息框
    var str = ['较差', '一般', '良好', '不错', '极佳'];
    layer.open({
        content: '<p id="starttwo" class="block clearfix">' +
            '            <p class="give-score">给我打个分吧</p>' +
            '            <p class="star_score" style="width: 110px;">' +
            '                <a href="javascript:void(0)" style="left: 0px; width: 22px; z-index: 5;"></a>' +
            '                <a href="javascript:void(0)" style="left: 0px; width: 44px; z-index: 4;"></a>' +
            '                <a href="javascript:void(0)" style="left: 0px; width: 66px; z-index: 3;"></a>' +
            '                <a href="javascript:void(0)" style="left: 0px; width: 88px; z-index: 2;"></a>' +
            '                <a href="javascript:void(0)" style="left: 0px; width: 110px; z-index: 1;"></a>' +
            '            </p>' +
            '            <p class="comment"><span class="fenshu"></span></p>' +
            '        </p>',
        btn: '提交',
        yes: function (index) {
            var ns=$("#starttwo").data("score");//获取值
            //这里是提交才会执行
            if (ns) {   //这里ns的值没有收到上面的局部变量。求万能的大神给出解决方法。
                $(document.body).off("click", ".star_score a");
                layer.close(index);
                $.ajax({
                    url: praiseURL,
                    type: 'post',
                    data: {
                        key: "mooc",
                        toKen: toKen,
                        memberId: memberId,
                        courseId: courseId,
                        grade: ns
                    },
                    success: function success(msg) {
                        console.log()
                            //提示
                        layer.open({
                            content: '你已评过分!',
                            skin: 'msg',
                            time: 2 //2秒后自动关闭
                        });
                    }
                })
            } else {
                layer.open({
                    content: '尚未评分!',
                    skin: 'msg',
                    time: 2 //2秒后自动关闭
                });
            }
        }
    });
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号