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()次のように、クリック関数内の値に依存する 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の後に書き込むだけですreturnc.getbehaviour()+ t.getbehaviour();

于 2013-02-17T17:08:54.460 に答える