JavaScript函数赢得';不管我怎么努力都不行
我是JavaScript的新手,不好意思说我搞不懂这个。我试图创建一个网站,解析名字和姓氏输出电子邮件地址。我将onclick()函数移到onload()之外,这只会产生更多问题。任何帮助都将不胜感激。我为我的无知道歉 HTML:JavaScript函数赢得';不管我怎么努力都不行,javascript,html,function,Javascript,Html,Function,我是JavaScript的新手,不好意思说我搞不懂这个。我试图创建一个网站,解析名字和姓氏输出电子邮件地址。我将onclick()函数移到onload()之外,这只会产生更多问题。任何帮助都将不胜感激。我为我的无知道歉 HTML: 您可以在JavaScript中尝试以下代码: window.onload = function() { //alert("Just finished loading the webpage in the window."); }
您可以在JavaScript中尝试以下代码:
window.onload = function() {
//alert("Just finished loading the webpage in the window.");
}
document.getElementById("genemail").onclick = processForm(){
// alert("Just finished loading the webpage in the window.");
var firstname = document.getElementById("fname").value;
var lastname = document.getElementById("lname").value;
console.log(firstname + " " + lastname);
var label = document.getElementsByClassName("outputArea");
label[0].innerHTML = "Your Email Address: " + firstname + "." + lastname + "@gmail.com";
document.getElementById("by-line").innerHTML = document.getElementById("by-line").innerHTML + " / Created By: Tony Vance";
}
document.getElementById("genemail").addEventListener("click", processForm, false);
function processForm(){
alert("Just finished loading the webpage in the window.");
var firstname = document.getElementById("fname").value;
var lastname = document.getElementById("lname").value;
console.log(firstname + " " + lastname);
var label = document.getElementsByClassName("outputArea");
label[0].innerHTML = "Your Email Address: " + firstname + "." + lastname + "@gmail.com";
document.getElementById("by-line").innerHTML = document.getElementById("by-line").innerHTML + " / Created By: Tony Vance";
}
行
document.getElementById(“genemail”).onclick=processForm(){
是问题所在,您不能在此处命名函数processForm
。如果您将其更改为关键字function
,则效果很好,请参阅此提琴:如果您想将函数直接分配给onclick
事件,则应使用匿名函数:
document.getElementById("genemail").onclick = function(){
// alert("Just finished loading the webpage in the window.");
var firstname = document.getElementById("fname").value;
var lastname = document.getElementById("lname").value;
console.log(firstname + " " + lastname);
var label = document.getElementsByClassName("outputArea");
label[0].innerHTML = "Your Email Address: " + firstname + "." + lastname + "@gmail.com";
document.getElementById("by-line").innerHTML = document.getElementById("by-line").innerHTML + " / Created By: Tony Vance";
}
如果不想使用匿名函数,且函数无参数,则单独定义函数并分配:
function processForm(){
// alert("Just finished loading the webpage in the window.");
var firstname = document.getElementById("fname").value;
var lastname = document.getElementById("lname").value;
console.log(firstname + " " + lastname);
var label = document.getElementsByClassName("outputArea");
label[0].innerHTML = "Your Email Address: " + firstname + "." + lastname + "@gmail.com";
document.getElementById("by-line").innerHTML = document.getElementById("by-line").innerHTML + " / Created By: Tony Vance";
}
document.getElementById("genemail").onclick = processForm;
现在效果很好。谢谢!感谢您的全面回复,现在效果很好!
function processForm(){
// alert("Just finished loading the webpage in the window.");
var firstname = document.getElementById("fname").value;
var lastname = document.getElementById("lname").value;
console.log(firstname + " " + lastname);
var label = document.getElementsByClassName("outputArea");
label[0].innerHTML = "Your Email Address: " + firstname + "." + lastname + "@gmail.com";
document.getElementById("by-line").innerHTML = document.getElementById("by-line").innerHTML + " / Created By: Tony Vance";
}
document.getElementById("genemail").onclick = processForm;