这是问题“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…');
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 {}
block 始终被调用。我该如何解决这个问题?
最佳答案
您没有重新调整任何内容。如果您不让函数返回您希望它返回的内容,那么它就不会返回您希望它返回的内容。
要让它返回你想要它返回的内容,你需要让它返回你想要它返回的内容,这样它就会返回你想要它返回的内容,并且你将能够使用它返回的内容。
function printSum() {
console.log('Sum:' + (c.getBehaviour() + t.getBehaviour()));
return c.getBehaviour() + t.getBehaviour();
}
关于javascript - 在单击函数条件语句中调用时,函数值未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14923572/