Ich weiß das Problem hier ist, weil sie beide die gleiche ID für die Eingabe und für div teilen. gibt es eine Möglichkeit, die ID des bestimmten divs anzugeben, der wie "this" geklickt wurde. ohneupdate document.getElementById für denselben ID-Namen in verschiedenen div
mehrere IDs in meinen Code mit<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function() {
$(this).on("click", ".descrip", function() {
$(this).next('.def').slideToggle("slow");
});
});
function addDef() {
//window.alert (1);
var def = document.getElementById("defInput").value;
//window.alert (def);
document.getElementById("addf").innerHTML += "<div class= 'descrip'> descrip </div>";
document.getElementById("addf").innerHTML += "<div class= 'def'> " + def + " </div>";
}
</script>
</head>
<body>
<div class="descrip"></div>
<div class="def"></div>
enter def for apple:
<input type="text" id="defInput">
<br>
<br>
<button onclick="addDef()">ADD</button>
<div id="addf"></div>
<div class="descrip"></div>
<div class="def"></div>
enter def for orange:
<input type="text" id="defInput">
<br>
<br>
<button onclick="addDef()">ADD</button>
<div id="addf"></div>
</body>
</html>
_Identifier in HTML müssen eindeutig sein_ Ihr HTML ist ungültig. – Satpal
IDs müssen eindeutig sein, wenn Skripts mit ihnen arbeiten sollen. Ende der Geschichte. –
Anstelle von ID sollten Sie name = 'oder eine Klasse verwenden. IDs in HTML sollten eindeutig sein. –