Reputation: 23
I am trying to create a random phrase generator with words. My problem is to get a new phrase I have to refresh the page first and then it creates a new phrase. I want it to generate phrase without refreshing whole page or at least generate and refresh with same button here is my code.
var output = "hai " + randomBodyPart + " come un " + randomWord + " " + randomAdjective + "!";
//Pagereloder
function myFunction() {
location.reload();
}
//Genretor Button
var button = document.querySelector("button");
button.addEventListener("click", function() {
(document.getElementById("viewer").innerHTML= output);
});
and here is HTML
<article>
<header>
<h1>Random word Genretor</h1>
<p class="gen-button"><button class="btn">Click me</button><button class="btn" onclick="myFunction()">Relod</button></p>
<h2 id="viewer">Here</h2>
</header>
Upvotes: 1
Views: 4670
Reputation: 1810
<button id="myButton">Click to change the number</button>
<span id="randomNumber"></span>
<script type="text/javascript">
(function(d) {
var button = d.getElementById("myButton");
var textNumber = d.getElementById("randomNumber");
button.addEventListener("click", function(evt) {
textNumber.innerHTML = _randomNumber();
});
var _randomNumber = function() {
return Math.floor((Math.random() * 10) + 1);
}
})(document);
</script>
Upvotes: 1
Reputation: 3778
Throw your code into a function and make the button call that function:
function myFunction() {
var output = "hai " + randomBodyPart + " come un " + randomWord + " " + randomAdjective + "!";
document.getElementById("viewer").innerHTML= output
}
//Genretor Button
var button = document.querySelector("button");
button.addEventListener("click", function() {
myFunction();
});
Also, the random generators must be inside thy function also.
Upvotes: 0