0

该按钮被称为“generateid”,文本框被称为“generateidtxt” 我希望当我点击按钮时日期显示在文本框中,但它显示未定义。

    function Month() {
        var m = new Date();
        var mm = m.getMonth() + 1;
        mm;
    }
    function Year() {
        var y = new Date();
        var yy = y.getFullYear();
        yy;
    }
    function Day() {
        var d = new Date();
        var dd = d.getDate();
        dd;
    }


//generate id
    function guidGenerator() {

        var theID = (Year() + Month() + Day());
        theID;

}

function generateID() {

        var TheTextBox = document.getElementById("generateidtxt");
        TheTextBox.value = TheTextBox.value + guidGenerator();
    document.getElementById("generateid").disabled=true;    

}
4

3 回答 3

1

您没有在guidGenerator()函数中返回任何内容:

function guidGenerator() {
    var theID = (Year() + Month() + Day());
    return theID;
}

与所有其他功能相同:

function Month() {
    var m = new Date();
    var mm = m.getMonth() + 1;
    return mm;
}
function Year() {
    var y = new Date();
    var yy = y.getFullYear();
    return yy;
}
function Day() {
    var d = new Date();
    var dd = d.getDate();
    return dd;
}
于 2013-06-13T15:47:46.507 回答
1

看起来您缺少 return inguidGenerator()和所有其他功能:

    function guidGenerator() {

        var theID = (Year() + Month() + Day());
        return theID;

}
于 2013-06-13T15:47:57.790 回答
1

您的任何函数实际上都没有返回值。使用return关键字:

function Month() {
    var m = new Date();
    var mm = m.getMonth() + 1;
    return mm;
}

只需这样做:

mm;

您所做的mm只是对结果进行评估而不做任何事情,这没有任何意义。它在语法上没问题,但没有意义。

于 2013-06-13T15:51:01.223 回答