Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么这个javascript函数在错误的时间激活?_Javascript - Fatal编程技术网

为什么这个javascript函数在错误的时间激活?

为什么这个javascript函数在错误的时间激活?,javascript,Javascript,这是我目前使用的代码 function firstChildAge() { var header = document.createElement('H3'); var body = document.getElementsByTagName('BODY'); var textnode = document.createTextNode("WHAT IS THE AGE OF THE FIRST CHILD?"); var inputChildOne = doc

这是我目前使用的代码

function firstChildAge() { 
    var header = document.createElement('H3');
    var body = document.getElementsByTagName('BODY');
    var textnode = document.createTextNode("WHAT IS THE AGE OF THE FIRST CHILD?");
    var inputChildOne = document.createElement("Input");
    var childOneAgeResponse = inputChildOne.value;
    header.appendChild(textnode);
    document.body.appendChild(header);
    document.body.appendChild(inputChildOne);
}

function submitButton() {
    var btn = document.createElement('Button');
    document.body.appendChild(btn);
    btn.onClick = testFunction_2();
}

function testFunction_2() {
    alert("foo");
}

if (childrenResponse == 1) {
    firstChildAge();
    submitButton(); 
}
如您所见,如果childrenResponse(用户对上一个查询的响应)等于1,则两个函数都将被激活。尝试的目标是创建文本节点、输入和按钮。从现在开始,按钮应该处于活动状态testFunction2(),它会提醒我们它正在工作。但是,testFunction2()会在文本节点或输入出现之前激活。我能找到原因,如果有人能帮我,我将不胜感激。多谢各位

另外,在旁注中,如何向submitButton()中创建的按钮添加文本?谢谢

有两个问题:

  • onClick
    应该是
    onClick
  • 您正在执行该函数并将该函数的结果分配给onclick<代码>btn.onClick=testFunction_2()应该是
    btn.onClick=testFunction_2
请参阅下面的工作代码段

函数firstChildAge(){
var header=document.createElement('H3');
var body=document.getElementsByTagName('body');
var textnode=document.createTextNode(“第一个孩子的年龄是多少?”);
var inputChildOne=document.createElement(“输入”);
var childOneAgeResponse=inputChildOne.value;
header.appendChild(textnode);
document.body.appendChild(表头);
document.body.appendChild(inputChildOne);
}
函数testFunction_2(){
警惕(“foo”);
}
函数submitButton(){
var btn=document.createElement('button');
btn.innerHTML=“一些按钮名称”;
btn.onclick=testFunction_2;
文件.正文.附件(btn);
}
var-childrenResponse=1;
if(childrenResponse==1){
初生子女();
submitButton();
}
有两个问题:

  • onClick
    应该是
    onClick
  • 您正在执行该函数并将该函数的结果分配给onclick<代码>btn.onClick=testFunction_2()应该是
    btn.onClick=testFunction_2
请参阅下面的工作代码段

函数firstChildAge(){
var header=document.createElement('H3');
var body=document.getElementsByTagName('body');
var textnode=document.createTextNode(“第一个孩子的年龄是多少?”);
var inputChildOne=document.createElement(“输入”);
var childOneAgeResponse=inputChildOne.value;
header.appendChild(textnode);
document.body.appendChild(表头);
document.body.appendChild(inputChildOne);
}
函数testFunction_2(){
警惕(“foo”);
}
函数submitButton(){
var btn=document.createElement('button');
btn.innerHTML=“一些按钮名称”;
btn.onclick=testFunction_2;
文件.正文.附件(btn);
}
var-childrenResponse=1;
if(childrenResponse==1){
初生子女();
submitButton();

}
您正在onClick中调用函数testFunction\u 2。你需要提供参考。 那也不行。您需要将事件侦听器添加到按钮。 要设置文本,只需设置按钮的innerHTML

var btn = document.createElement('Button');
btn.innerHTML = "click";
btn.addEventListener('click', testFunction_2);
document.body.appendChild(btn);

btn.onclick = testFunction_2; // in place of addEventListener.

//如果您想使用onclick。在onclick中使用小写字母“c”。

您正在onclick中调用函数testFunction\u 2。你需要提供参考。 那也不行。您需要将事件侦听器添加到按钮。 要设置文本,只需设置按钮的innerHTML

var btn = document.createElement('Button');
btn.innerHTML = "click";
btn.addEventListener('click', testFunction_2);
document.body.appendChild(btn);

btn.onclick = testFunction_2; // in place of addEventListener.

//如果您想使用onclick。在onclick中使用小写字母“c”。

您调用了
testFunction_2
,而不是分配它。这应该行得通

函数submitButton(){
var btn=document.createElement('Button');
btn.onclick=testFunction_2;
文件.正文.附件(btn);

}
您调用了
testFunction\u 2
,而不是分配它。这应该行得通

函数submitButton(){
var btn=document.createElement('Button');
btn.onclick=testFunction_2;
文件.正文.附件(btn);

}
您正在
onClick
中调用函数
testFunction\u 2()。您需要向按钮添加事件侦听器,如下所示

btn.addEventListener('click', testFunction_2);
要将文本添加到按钮,请使用

var txt = document.createTextNode("CLICK ME");
btn.appendChild(txt);
检查下面的代码片段

函数firstChildAge(){
var header=document.createElement('H3');
var body=document.getElementsByTagName('body');
var textnode=document.createTextNode(“第一个孩子的年龄是多少?”);
var inputChildOne=document.createElement(“输入”);
var childOneAgeResponse=inputChildOne.value;
header.appendChild(textnode);
document.body.appendChild(表头);
document.body.appendChild(inputChildOne);
}
函数submitButton(){
var btn=document.createElement('Button');
var txt=document.createTextNode(“单击我”);
btn.appendChild(txt);
文件.正文.附件(btn);
btn.addEventListener('click',testFunction_2);
}
函数testFunction_2(){
警惕(“foo”);
}
儿童反应=1;
if(childrenResponse==1){
初生子女();
submitButton();

}
您正在
onClick
中调用函数
testFunction\u 2()。您需要向按钮添加事件侦听器,如下所示

btn.addEventListener('click', testFunction_2);
要将文本添加到按钮,请使用

var txt = document.createTextNode("CLICK ME");
btn.appendChild(txt);
检查下面的代码片段

函数firstChildAge(){
var header=document.createElement('H3');
var body=document.getElementsByTagName('body');
var textnode=document.createTextNode(“第一个孩子的年龄是多少?”);
var inputChildOne=document.createElement(“输入”);
var childOneAgeResponse=inputChildOne.value;
header.appendChild(textnode);
document.body.appendChild(表头);
document.body.appendChild(inputChildOne);
}
函数submitButton(){
var btn=document.createElement('Button');
var txt=document.createTextNode(“单击我”);
btn.appendChild(txt);
文件.正文.附件(btn);
btn.addEventListener('click',testFunction_2);
}
函数testFunction_2(){
警惕(“foo”);
}
儿童反应=1;
if(c)