简体   繁体   中英

Convert a JavaScript object to HTML

i need to convert an JavaScript array to html and display it in a div element here my JS code

js

$(document).ready(function(){ 
  $("#getQuotes").on("click", function(){
    var index = Math.floor(Math.random() * (quotes.length));
    var html = "<h6> " + quotes[index].author + "</h6> <br>";
    html = "<h1>" + quotes[index].quote + "</h1>";

   $("#display").html(html);
  });
});

// Js object of some famous quotes
var quotes = [
    {
        "quote": "Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth.",
        "author": "—Sherlock Holmes"
    },
    {
        "quote" : "You can do anything, but not everything.",
        "author" : "—David Allen"
    },
    {
        "quote" : "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.",
        "author" : "—Antoine de Saint-Exupéry"
    },
    {
        "quote" : "The richest man is not he who has the most, but he who needs the least.",
        "author" : "—Unknown Author"
    },
    {
        "quote" : "You miss 100 percent of the shots you never take.",
        "author" : "—Wayne Gretzky"
    },
    {
        "quote" : " Courage is not the absence of fear, but rather the judgement that something else is more important than fear.",
        "author" : "—Ambrose Redmoon"
    },
    {
        "quote" : "You must be the change you wish to see in the world.",
        "author" : "—Gandhi"
    },
    {
        "quote" : " To the man who only has a hammer, everything he encounters begins to look like a nail.",
        "author" : "—Abraham Maslow"
    },
    {
        "quote" : "We are what we repeatedly do; excellence, then, is not an act but a habit.",
        "author" : "—Aristotle"
    },
    {
        "quote" : "Do not seek to follow in the footsteps of the men of old; seek what they sought.",
        "author" : "—Basho"
    },
    {
        "quote" : "A wise man gets more use from his enemies than a fool from his friends.",
        "author" : "—Baltasar Gracian"
    },
    {
        "quote" : "Always forgive your enemies; nothing annoys them so much.",
        "author" : "—Oscar Wilde"
    }
  ];

Substitute += operator for = operator at last html assignment to concatenate "<h1>" + quotes[index].quote + "</h1>" instead of overwriting html variable

 $(document).ready(function(){ $("#getQuotes").on("click", function(){ var index = Math.floor(Math.random() * (quotes.length)); var html = "<h6> " + quotes[index].author + "</h6> <br>"; html += "<h1>" + quotes[index].quote + "</h1>"; $("#display").html(html); }); }); // Js object of some famous quotes var quotes = [ { "quote": "Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth.", "author": "—Sherlock Holmes" }, { "quote" : "You can do anything, but not everything.", "author" : "—David Allen" }, { "quote" : "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.", "author" : "—Antoine de Saint-Exupéry" }, { "quote" : "The richest man is not he who has the most, but he who needs the least.", "author" : "—Unknown Author" }, { "quote" : "You miss 100 percent of the shots you never take.", "author" : "—Wayne Gretzky" }, { "quote" : " Courage is not the absence of fear, but rather the judgement that something else is more important than fear.", "author" : "—Ambrose Redmoon" }, { "quote" : "You must be the change you wish to see in the world.", "author" : "—Gandhi" }, { "quote" : " To the man who only has a hammer, everything he encounters begins to look like a nail.", "author" : "—Abraham Maslow" }, { "quote" : "We are what we repeatedly do; excellence, then, is not an act but a habit.", "author" : "—Aristotle" }, { "quote" : "Do not seek to follow in the footsteps of the men of old; seek what they sought.", "author" : "—Basho" }, { "quote" : "A wise man gets more use from his enemies than a fool from his friends.", "author" : "—Baltasar Gracian" }, { "quote" : "Always forgive your enemies; nothing annoys them so much.", "author" : "—Oscar Wilde" } ]; 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="getQuotes">get quotes</div> <div id="display"></div> 

html code:

<button id="getQuotes">get quotes</button>
<div id="display"></div>

jqueryCode:

$(document).ready(function(){ 
  $("#getQuotes").on("click", function(){
    var index = Math.floor(Math.random() * (quotes.length));
    for(var i = 0; i<=index; i++){
     var html = "<h6> " + quotes[i].author + "</h6> <br>";
     html += "<h1>" + quotes[i].quote + "</h1>";
    }
   $("#display").html(html);
  });
});

You may try like this. https://jsfiddle.net/yu799cdz/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM