我确定我在这里遗漏了一些非常基本的东西,但它让我停留了大约一个小时,我似乎无法解决问题。
基本上,我正在尝试在对象中创建一个方法,该方法将检查html中的复选框值,如果为true,则在控制台的同一对象中显示三个值(最后我将其写入innerHTML)我的形式)。
以下代码只是在firebug中将“function()”写入我的控制台。显然,我正在尝试编写firstName lastName
电子邮件。我在这里错过了什么简单的事情?提前致谢!
function process() {
'use strict';
var firstName = document.getElementById("firstName").value;
var lastName = document.getElementById("lastName").value;
var email = document.getElementById("email").value;
var permission = document.getElementById("permission").checked;
var contactInfo = {
firstName: firstName,
lastName: lastName,
email: email,
permission: permission,
display: function() {
var contactCard;
if (this.permission == true) {
contactCard = firstName + " " + lastName + "<br />" + email
} else {
contactCard = "Permission Denied."
}
return contactCard;
}
};
console.log(contactInfo.display);
return false;
};
function init() {
'use strict';
document.getElementById('theForm').onsubmit = process;
};
window.onload = init;
答案 0 :(得分:1)
console.log(contactInfo.display());
您需要调用该函数。
您目前只有console.log(contactInfo.display);
显示功能且未执行(因此控制台实际上会打印contactInfo.display.toString()
的结果),这就是您看到&#39;功能&#39;而不是返回值&#39; contactCard&#39;。