gpt4 book ai didi

javascript - 1个函数独立替换4个不同ID的innerHTML

转载 作者:行者123 更新时间:2023-11-30 14:27:01 26 4
gpt4 key购买 nike

我想要一个函数,该函数将根据其自身的 innerHTML 将具有特定字符串的 ID 替换为元素的 innerHTML。我目前有 4 个具有不同 ID 的元素,并且我对每个元素都有一个排序函数。由于这 4 个函数做完全相同的事情,并根据相同的条件用完全相同的字符串替换 innerHTML,是否可以制作 1 个同时适用于所有元素的函数而不是 4 个? (每个函数测试 160 个不同的值,这意味着它们每个包含 160 个 if 语句......其中有 4 个会使代码看起来不必要地长)

这是一个代码示例(每个元素有 3 个不同的条件,而不是 160 个):

<body>

<div id="object1">10</div>
<div id="object2">10</div>
<div id="object3">10</div>
<div id="object4">10</div>

<div id="extra1"></div>
<div id="extra2"></div>
<div id="extra3"></div>
<div id="extra4"></div>

<script>

function changeHTML1() {
var ob1 = document.getElementById("object1");
var ex1 = document.getElementById("extra1");
if (ob1.innerHTML == "10") {
ex1.innerHTML = "D5";
}
if (ob1.innerHTML == "9") {
ex1.innerHTML = "1-D4";
}
if (ob1.innerHTML == "8") {
ex1.innerHTML = "D4";
}
}

function changeHTML2() {
var ob2 = document.getElementById("object2");
var ex2 = document.getElementById("extra2");
if (ob2.innerHTML == "10") {
ex2.innerHTML = "D5";
}
if (ob2.innerHTML == "9") {
ex2.innerHTML = "1-D4";
}
if (ob2.innerHTML == "8") {
ex2.innerHTML = "D4";
}
}

function changeHTML3() {
var ob3 = document.getElementById("object3");
var ex3 = document.getElementById("extra3");
if (ob3.innerHTML == "10") {
ex3.innerHTML = "D5";
}
if (ob3.innerHTML == "9") {
ex3.innerHTML = "1-D4";
}
if (ob3.innerHTML == "8") {
ex3.innerHTML = "D4";
}
}

function changeHTML4() {
var ob4 = document.getElementById("object4");
var ex4 = document.getElementById("extra4");
if (ob4.innerHTML == "10") {
ex4.innerHTML = "D5";
}
if (ob4.innerHTML == "9") {
ex4.innerHTML = "1-D4";
}
if (ob4.innerHTML == "8") {
ex4.innerHTML = "D4";
}
}

</script>

</body>

最佳答案

你可以试试这个;

function changeHTML() {
var i;
var numberOfElements = 4;

for (i = 1; i <= numberOfElements; i++) {
var ob = document.getElementById("object"+i);
var ex = document.getElementById("extra"+i);

if (ob.innerHTML == "10") {
ex.innerHTML = "D5";
}
if (ob.innerHTML == "9") {
ex.innerHTML = "1-D4";
}
if (ob.innerHTML == "8") {
ex.innerHTML = "D4";
}
}
}

关于javascript - 1个函数独立替换4个不同ID的innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51758178/

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