» »

javascript - poenostavitev funkcije

javascript - poenostavitev funkcije

Malcolm_Y ::

Delam eno preprosto stran, kjer bodo gumbki in ob kliku na gumbek se pod njim pokaže en tekst.

Za vsak gumbek uporabim js funkcijo document.getElementById.innerHTML, vsak gumbek pa ima svoj ID.

In javascript je videti takole:


HTML pa takole:



Zdaj pa je problem, ker bo teh gumbkov zelo veliko (čez 200).

A se da to nekako poenostavit, pa da bi imel isto funkcionalnost?

k--p ::

Ja, imaš več možnosti, npr. z inline lahko pošlješ event, lahko pa tudi v js vežeš evente na vse gumbe z nekim classom ...


Oba načina:

.html
<script>
function myfunction(e){
console.log(e.target.innerHTML);
}
</script>
<button id="1" class="showTextButton"> dsadsa</button>
<button id="2" class="showTextButton"> dsadsa</button>
<button id="3" class="showTextButton"> dsadsa</button>
<button id="4" onclick="myfunction(event)"> dsadsa</button>
<button id="5" onclick="myfunction(event)"> dsadsa</button>
<button id="6" onclick="myfunction(event)"> dsadsa</button>

--------
.js
var buttons = document.getElementsByClassName("showTextButton");
for (var i = 0; i < buttons.length; i++) {
    buttons[i].addEventListener("click", function(e) {
    console.log(e.target.innerHTML);
 	 });
}

Zgodovina sprememb…

  • spremenilo: k--p ()

Malcolm_Y ::

O, super - točno to rabim, ja. Hvala, se bom poigral s temle, mislim, da mi to dejansko odpravi vse posamezne javascripte. Lp.

k--p ::

Jap, to je bil namen :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[js jquery] širina diva

Oddelek: Programiranje
141118 (986) alexa-lol
»

[jquery] .append

Oddelek: Programiranje
21872 (699) korenje3
»

while in for odštevanje - kot rezultat upošteva tudi izhodiščno vrednost

Oddelek: Programiranje
181986 (1709) slitkx
»

Javascript validacija web-to-lead forme

Oddelek: Programiranje
191004 (811) Gandalfar
»

AJAX neznana težava

Oddelek: Programiranje
81136 (930) luksorzi

Več podobnih tem