在点击按钮时,我试图更改从后端动态生成的内容。 我正在选择一个被逐个动态生成的按钮var testOne = document.getElementById("promo_popup_cta_0"); 。 只有最后的数字从0变化。 一旦我点击promo_popup_cta_0 ,它应该更改HTML中的内容,并将相同的数字添加到此ID promo_popup_wrapper_NUMBER中。
var modalOne = document.getElementById("promo_popup_wrapper_0");
var modalTwo = document.getElementById("promo_popup_wrapper_1");
var trigger = document.querySelector(".popupLink");
var testOne = document.getElementById("promo_popup_cta_0");
var testTwo = document.getElementById("promo_popup_cta_1");
var closeButton = document.querySelector(".close-button");
function toggleModal() {
modalOne.classList.toggle("show-modal-promo");
}
function windowOnClick(event) {
if (event.target === modalOne) {
toggleModal();
}
}
function toggleModalTwo() {
modalOne.classList.toggle("show-modal-promo");
}
function windowOnClick(event) {
if (event.target === modalTwo) {
toggleModal();
}
}
testOne.addEventListener("click", toggleModal);
testTwo.addEventListener("click", toggleModalTwo);
closeButton.addEventListener("click", toggleModal);
window.addEventListener("click", windowOnClick);
})
.modal-promo {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
opacity: 0;
visibility: hidden;
transform: scale(1.1);
transition: visibility 0s linear 0.25s, opacity 0.25s 0s, transform 0.25s;
}
.modal-promo .modal-content-promo {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: white;
padding: 1rem 1.5rem;
width: 24rem;
border-radius: 0.5rem;
}
.modal-promo .modal-content-promo .close-button {
float: right;
width: 1.5rem;
line-height: 1.5rem;
text-align: center;
cursor: pointer;
border-radius: 0.25rem;
background-color: lightgray;
}
.modal-promo .modal-content-promo .close-button:hover {
background-color: darkgray;
}
.show-modal-promo {
opacity: 1;
visibility: visible;
transform: scale(1);
transition: visibility 0s linear 0s, opacity 0.25s 0s, transform 0.25s;
}
<div class="modal-promo" id="promo_popup_wrapper_<?php print $key;?>">
<div class="modal-content-promo">
<span class="close-button">×</span>
<p>
<?php
if (!empty($promo_banner_fields['promo_popup_text'])):
print $promo_banner_fields['promo_popup_text'];
endif;
?>
</p>
</div>
</div>
<u class="popupLink" id="promo_popup_cta_0">One</u>
<u class="popupLink" id="promo_popup_cta_1">Two</u>