JavaScript匿名函数和输入参数

时间:2013-04-12 23:31:31

标签: javascript jquery

我试图了解如何正确地将参数传递给匿名函数。似乎我的“这个”并没有指向我希望它会去的地方。我做错了什么?

的jsfiddle: http://jsfiddle.net/Chiliyago/NvGs8/3/

function initUTCDate() {
    var $date = new Date();
    var $dateUTC = new Date($date.getUTCFullYear(), $date.getUTCMonth(), $date.getUTCDate(), $date.getUTCHours(), $date.getUTCMinutes(), $date.getUTCSeconds());
    return $dateUTC;
}

$(function () {

    var setUTCDateTime = function (timeType) {

        var $input = $(this);

        var $d = initUTCDate();

        if (timeType == "GMT") {
            $input.val($d.toGMTString());
        } else {
            $input.val("false");
        }
    };

    $('input[data-ucw-currDateTime]').each(setUTCDateTime("GMT"));


});

1 个答案:

答案 0 :(得分:1)

尝试使用:

$(function () {
    var setUTCDateTime = function (timeType) {
        return function () {
            var $input = $(this);

            var $d = initUTCDate();

            if (timeType == "GMT") {
                $input.val($d.toGMTString());
            } else {
                $input.val("false");
            }
        };
    };

    $('input[data-ucw-currDateTime]').each(setUTCDateTime("GMT"));
});

DEMO: http://jsfiddle.net/NvGs8/4/