gpt4 book ai didi

javascript - 如何使用第二个

转载 作者:行者123 更新时间:2023-12-04 08:57:59 25 4
gpt4 key购买 nike

let words = [];
var longestCt = 0;
var longestWord = "";
var myList = [];
var myList = ['Loops','are','used','while','Learning JavaScript'];

function addWords() {
let template = words.map(word => `<li>${word}</li>`).join('\n');
document.querySelector('ul').innerHTML = template;
}

addWords();

let btnAdd = document.querySelector('button');
let input = document.querySelector('input');


btnAdd.addEventListener('click', () => {
words.push(input.value);
input.value = '';
addWords();
});

let findLong = document.querySelector('button');

findLong.addEventListener('click', () => {

let longestCt = 0;
let longestWord = "";

words.forEach(function (value) {
if (value.length > longestCt) {
longestWord = value;
longestCt = value.length;
} else {
longestWord = longestWord;
}
});

//}
});
document.getElementById("demo2").innerHTML = longestWord;
div {
widows: 20%;
margin: auto;
}

input, button {
padding: 5px;
display: inline-block;
}

li {
font-size: 20px;
font-weight: bold;
margin-left: -40px;
list-style: none;
}
<!DOCTYPE html>

<head>

<link rel="stylesheet" href="test_Arr_Input.css">
<title>Test Longest Array.html</title>

</head>

<body>

<!--Thank you to YouTube KodeBase with my modifications adding a second button which isn't working-->

<div>

<input type="text">

<button>Add a Word</button>

<ul></ul>

<br>

<button>Find the Longest</button>

<p id="demo"></p>

</div>

<script type="text/javascript" src="test_Arr_Input.js"></script>

</body>

</html>

全面披露;初学者。照这样说;先感谢您。
我编写了一个简单的 JavaScript 来返回数组中最长的字符串。
这里它只是一个 JavaScript 函数,我从控制台运行,不与 html 交互:
var myList = ['Loops','are','used','while','Learning JavaScript'];

var longestCt = 0;
var longestWord = "";

myList.forEach(function (value) {
if (value.length > longestCt) {
longestWord = value; longestCt = value.length;
} else {
longestWord = longestWord;
}
});
console.log(longestWord);
然后我努力创建一个 HTML 页面来将对象输入到数组中并创建一个列表。
(感谢来自 Youtube 的 KodeBase 的指导)。用于此的 JavaScript 发布在 CSS 之后的最后。 这是 HTML:
<!DOCTYPE html>

<head>

<link rel="stylesheet" href="test_Arr_Input.css">
<title>Test Longest Array.html</title>

</head>

<body>

<!--Thank you to YouTube KodeBase with my modifications adding a second button which isn't working-->

<div>

<input type="text">

<button>Add a Word</button>

<ul></ul>

<br>

<button>Find the Longest</button>

<p id="demo"></p>

</div>

<button onclick="intoMyList()">Submit to the array</button>

<p id="demo"></p>

<button onclick="findTheLongest()">Find the Longest Word</button>

<p id="demo2"></p>

<script type="text/javascript" src="test_Arr_Input.js"></script>

</body>

</html>
这是 CSS:
div {
widows: 20%;
margin: auto;
}

input, button {
padding: 5px;
display: inline-block;
}

li {
font-size: 20px;
font-weight: bold;
margin-left: -40px;
list-style: none;
}
这是最终的 JavaScript:
let words = [];

function addWords() {
let template = words.map(word => `<li>${word}</li>`).join('\n');
document.querySelector('ul').innerHTML = template;
}

addWords();

let btnAdd = document.querySelector('button');
let input = document.querySelector('input');


btnAdd.addEventListener('click', () => {
words.push(input.value);
input.value = '';
addWords();
});

let findLong = document.querySelector('button');

findLong.addEventListener('click', () => {
//function findTheLongest() {
let longestCt = 0;
let longestWord = "";

myList.forEach(function (value) {
if (value.length > longestCt) {
longestWord = value;
longestCt = value.length;
} else {
longestWord = longestWord;
}
});

//}
});
document.getElementById("demo2").innerHTML = longestWord;
首先,为了更清晰,我更改了一些变量名称。
但问题是,虽然我可以通过点击第一个按钮获得进入数组的单词,但第二个按钮似乎没有调用 ForEach 函数来触发最长单词的返回。我想知道是否需要以某种方式区分 HTML 中的按钮 1 和按钮 2。或者,如果我只需要回到绘图板来重新思考我对将 JS 组合在一起的方式的理解。

最佳答案

简而言之,您需要为每个按钮指定一个唯一 ID,然后您可以使用此 ID 来定位代码中的相应按钮。

<button id="add-word">Add a Word</button>
let btnAdd = document.querySelector('#add-word');

关于javascript - 如何使用第二个 <button> 激活函数来调用 forEach?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63709407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com