0

这是问题“<a href="https://stackoverflow.com/questions/14920322/jquery-output-to-console-sum-of-2-variables">jQuery output to console sum of 2 variables'的扩展.

我有以下功能:

function printSum() {
    console.log('Sum:' + (c.getBehaviour() + t.getBehaviour()));
}

并希望根据printSum()click 函数中的值加载 HTML,如下所示:

$('#surname-help-label').click(function(e) {
    var helpText = $('#surname-help-text').html('loading&hellip;');

    if (printSum() >= 25) {
        helpText.load('help-text.html div:nth-of-type(2)');
    } else {
        helpText.load('help-text.html div:first');
        console.log('what do you get:' + printSum());
    };

    e.preventDefault();
});

我在该行中添加了console.log('what do you get:' + printSum());用于调试的目的,它返回的值undefined意味着该else {}块总是被调用。我该如何补救?

完整代码 jsFiddle

4

2 回答 2

3

你没有重新调整任何东西。如果你不让你的函数返回你想要它返回的东西,那么它就不会返回你想要它返回的东西。

要让它返回想要你想要它返回,你需要让它返回你想要它返回的东西,这样它就会返回你想要它返回的东西,你就可以使用它返回的东西。

function printSum() {
    console.log('Sum:' + (c.getBehaviour() + t.getBehaviour()));
    return c.getBehaviour() + t.getBehaviour();
}

MDNreturn声明

于 2013-02-17T17:00:57.580 回答
0

您没有在 printsum 函数中返回任何内容。只需在 printsum 函数中的 console.log 之后写 return c.getbehaviour() + t.getbehaviour();

于 2013-02-17T17:08:54.460 回答