2017-03-24 8 views
-1

text() in jQuery Append Anzahl

<p class="a">0</p> 
 
    <p class="a">0</p> 
 
    <button>Click</button> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
    
 
    <script>$('button').click(function() { 
 
\t var num = parseInt($('.a').text()); 
 
    num++; 
 
    $('.a').text(num.toString()); 
 
}) 
 
</script>

Der Code anhängen neue Nummer alte Nummer, aber ich will es um 1 erhöht klicken.

Antwort

1

$('.a') wird die Liste der Elemente passend zur Bedingung auszuwählen. 2 Elemente in diesem Fall.

Verwenden Sie also $.each() oder index, um das erforderliche Element zu filtern.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<p class="a">0</p> 
 
<p class="a">0</p> 
 
<button>Click</button> 
 

 
<script> 
 
    $('button').click(function() { 
 
    $('.a').each(function() { 
 
     $this = $(this); 
 
     var num = parseInt($this.text()); 
 
     $this.text(++num); 
 
    }); 
 
    }) 
 
</script>

1

Die num Variable außerhalb der Funktion deklarieren.

var num = parseInt($('.a').text()); 
 
$('button').click(function() { 
 
    num++; 
 
    $('.a').text(num); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p class="a">0</p> 
 
<p class="a">0</p> 
 
<button>Click</button>

Oder angeben, von dem Element, das Sie den Anfangswert fangen wollen, denn da gibt es zwei Elemente mit a Klasse sind, wird der Wert verdoppelt.

$('button').click(function() { 
 
    var num = parseInt($('#b').text()); 
 
    num++; 
 
    $('.a').text(num.toString()); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p class="a">0</p> 
 
<p class="a" id='b'>0</p> 
 
<button>Click</button>

+0

Dies ist ein falscher Weg, es zu tun. '$ ('. a')' wählt mehrere Elemente aus, also muss der Benutzer das spezifische Element erhalten, das er benötigt, oder eine Schleife verwenden, um alle Elemente zu füllen. – Pugazh

+0

@Pugazh Gib mir den Grund? –

+0

Ich habe es erwähnt. '$ ('. a')' wird mehrere Elemente auswählen, so dass der Benutzer das spezifische Element benötigt, das er benötigt, oder eine Schleife verwenden, um alle zu füllen – Pugazh