我有一个输入,用户可以在其中输入文本,当用户在键盘上按Enter时,它将单击“开始!”按钮。然后应显示“创建Div”按钮。当用户单击“创建Div”按钮时,将使用用户输入的文本创建一个div。但是我希望在用户按下Enter键时也单击此按钮。因此,当用户第一次按下“ Enter”时,它将单击“ Go!”。按钮,将显示“创建Div”按钮,然后当用户第二次按“ Enter”键时(或最好在屏幕上显示“ Create Div”按钮时),则将在用户输入的情况下创建实际的div文本。 我尝试使用IF语句在Javascript中执行此操作,但是现在当我第一次按下“ Enter”触发“ Go!”时按钮,它会自动触发“创建Div”按钮,并且在按下第一个“ Enter”键后立即显示div(取消注释我的JS代码的最后一位,以了解我的意思),我应该进行哪些更改才能获得所需的结果?
var button = document.getElementById("button");
var createbutton = document.createElement("button");
var creatediv = document.createElement("div");
button.addEventListener('click', function(){
createbutton.innerHTML = "Create Div";
createbutton.style.display = 'inline-block';
document.getElementById("body").appendChild(createbutton);
});
createbutton.addEventListener('click', function(){
createbutton.style.display = 'none';
var input = document.getElementById("input").value;
creatediv.innerHTML = input;
document.getElementById("body").appendChild(creatediv);
});
document.onkeydown = function(event){
if(event.keyCode == 13){
button.click();
}
}
/*if(createbutton.style.display = 'inline-block'){
document.onkeydown = function(event){
if(event.keyCode == 13){
createbutton.click();
}
}
}*/
<body id="body">
<input type="text" id="input" placeholder="Text goes here">
<button id="button">Go!</button>
</body>
答案 0 :(得分:0)
您可以提供您的ValueError: indices.shape[-1] must be <= params.rank, but saw indices shape: [?,5] and params shape: [?,85,1500] for 'encoder/GatherNd' (op: 'GatherNd') with input shapes: [?,85,1500], [?,5].
和ID,并检查该元素是否在DOM内
按下Enter键时:
createbutton
var button = document.getElementById("button");
var createbutton = document.createElement("button");
var creatediv = document.createElement("div");
button.addEventListener('click', function(){
createbutton.innerHTML = "Create Div";
createbutton.style.display = 'inline-block';
createbutton.id = 'createButton';
document.getElementById("body").appendChild(createbutton);
});
createbutton.addEventListener('click', function(){
createbutton.style.display = 'none';
var input = document.getElementById("input").value;
creatediv.innerHTML = input;
document.getElementById("body").appendChild(creatediv);
});
document.onkeydown = function(event){
if(event.keyCode === 13) {
if(document.getElementById('createButton')) {
createbutton.click();
} else {
button.click();
}
}
}