Sto facendo una calcolatrice jquery, dove facendo clic sui pulsanti che rappresentano i numeri e gli operatori su una calcolatrice, loHTML interno dello schermo cambierà per riflettere i pulsanti su cui si fa clic.Creazione di una calcolatrice JQuery, modifica innerHTML ma non succede nulla
Qui di seguito è il mio codice:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<title> JQuery Calculator </title>
</head>
<body>
<style>
section {
padding: 2em;
}
.display {
height: 5em;
color: #333;
}
</style>
<section id="calculator">
<div class="display">
</div>
<div id="numbersContainer">
<table id="numbers">
<tr>
<td>
<button class="number" id="one">1</button>
</td>
<td>
<button class="number" id="two">2</button>
</td>
<td>
<button class="number" id="three">3</button>
</td>
</tr>
<tr>
<td>
<button class="number" id="four">4</button>
</td>
<td>
<button class="number" id="five">5</button>
</td>
<td>
<button class="number" id="six">6</button>
</td>
</tr>
<tr>
<td>
<button class="number" id="seven">7</button>
</td>
<td>
<button class="number" id="eight">8</button>
</td>
<td>
<button class="number" id="nine">9</button>
</td>
</tr>
<tr>
<td>
<button class="number" id="zero">0</button>
</td>
</tr>
</table>
<table id="operators">
<tr>
<td>
<button class="operator" id="plus">+</button>
</td>
<td>
<button class="operator" id="minus">-</button>
</td>
</tr>
<tr>
<td>
<button class="operator" id="divide">/</button>
</td>
<td>
<button class="operator" id="times">x</button>
</td>
</tr>
</table>
</div>
</section>
<script>
var storedCalculation;
$('.number, .operator').click(function() {
var numberOrOperator = event.target.innerHTML;
storedCalculation+=numberOrOperator;
});
var calcScreen = $('.display').innerHTML;
calcScreen = storedCalculation;
</script>
</body>
</html>
e qui è la jsfiddle di esso: http://jsfiddle.net/ynf2qvqw/
Perché l'innerHTML della classe visualizzazione non cambia?
FYI, i tuoi elementi del pulsante non contengono HTML, quindi non dovresti usare 'innerHTML'. Hanno solo testo, quindi sarebbe più sicuro usare il contenuto del testo, probabilmente tramite '$ (event.target) .text()'. –
prova http://codepen.io/mariusbalaj/pen/bGqhI – Hiero