CodingForums.com

CodingForums.com (http://www.codingforums.com/index.php)
-   DOM and JSON scripting (http://www.codingforums.com/forumdisplay.php?f=15)
-   -   button click using JSON (http://www.codingforums.com/showthread.php?t=282108)

marchello 11-13-2012 05:58 PM

button click using JSON
 
Hi all,

I'm new to JSON, trying to generate list of buttons.

My need is to generate buttons using JSON array. It works fine for buttons text, but not for opening url. Could you please help me?

Here is my JSON code:
Code:

{
        "Caption": "Module caption",
        "Buttons":
        [
                {"Text":"google", "Url": "window.open('http://www.google.com/')"},
                {"Text":"yahoo", "Url": "window.open('http://www.yahoo.com/')"},
                {"Text":"microsoft", "Url": "window.open('http://www.microsoft.com/')"},
                {"Text":"facebook", "Url": "window.open('http://www.facebook.com/')"}
        ]
}

My html code:
Code:

<html>
        <head>
                <title>SMButtons</title>
                <script src="JQuery/jquery-1.8.2.min.js"></script>
                <script type="text/javascript">               
                        //When document loaded.
                        $(document).ready(function(){ 
                                // Get data from file as JSON
                    $.getJSON('Module.json', function(data) {
                            // Set json data from file to variable 'persons'
                                    var buttons = data.Buttons;
                                    // For each item of variable person append to ul list
                            $.each(buttons, function(key, val)
                            {       
                    $("<li><input type='button' onClick='"+ val.Url +"' value='"+ val.Text +"'/></li>").appendTo('#aaa');
                                        });

                            });                                                     
                        });
            </script>
        </head>
        <body>
                <ul id='ulObj'></ul>

                <ul id='aaa'>
                        <li>1</li>
                        <li>2</li>
                </ul>

        </body>
</html>


marchello 11-14-2012 01:49 PM

This issue is resolved.

JSON code:
Code:

{
 "Caption": "Module caption",
 "Buttons":
 [
  {"Text":"google", "Url": "window.open(\"http://www.google.com/\")"},
  {"Text":"yahoo", "Url": "window.open(\"http://www.yahoo.com/\")"},
  {"Text":"microsoft", "Url": "window.open(\"http://www.microsoft.com/\")"},
  {"Text":"facebook", "Url": "window.open(\"http://www.facebook.com/\")"}
 ]
}

html code:
Code:

<html>
 <head>
  <title>SMButtons</title>
  <script src="JQuery/jquery-1.8.2.min.js"></script>
  <script type="text/javascript">       
  //When document loaded.
  $(document).ready(function(){ 
    // Get data from file as JSON
              $.getJSON('Module.json', function(data) {
              // Set json data from file to variable 'persons'
        var buttons = data.Buttons;
        // For each item of variable person append to ul list
              $.each(buttons, function(key, val)
              {
                    $("<li><input type='button' onClick='"+ val.Url +"' value='"+ val.Text +"'/></li>").appendTo('#aaa');
    });

        });           
    });
    </script>
 </head>
 <body>
  <ul id='ulObj'></ul>

  <ul id='aaa'>
  <li>1</li>
  <li>2</li>
  </ul>

  </body>
</html>



All times are GMT +1. The time now is 09:30 PM.

Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.