Click here to Skip to main content
15,886,518 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
I am trying to pass daily json data to (var data) in javascript, when the page loads and pass historical json data to (var data2) in javascript. I am little unsure, how do I go about doing this. Please advice, in how can I get (var data) function in javascript to read daily json data and (var data2) on javascript to read historical json data.

C#
protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //Daily Data
            JavaScriptSerializer jss = new JavaScriptSerializer();
            ClientScript.RegisterStartupScript(this.GetType(), "TestInitPageScript",
                //string.Format("<script type=\"text/javascript\">google.load('visualization','1.0',{{'packages':['corechart','controls']}});google.setOnLoadCallback(function(){'drawVisualization'({0},'{1}','{2}');});</script>",
           string.Format("<script type=\"text/javascript\">google.load('visualization','1.0',{{'packages':['corechart','controls']}});google.setOnLoadCallback(function(){{drawVisualization({0},'{1}','{2}','{3}');}});</script>",
            jss.Serialize(GetData()),
        "Name Example",
        "Name",
        "Type Example",
        "Type Example",
         "Type,"));

        }
            else 

            {
               // Historical Data
                JavaScriptSerializer jtt = new JavaScriptSerializer();
        ClientScript.RegisterStartupScript(this.GetType(), "TestInitPageScript",
            //string.Format("<script type=\"text/javascript\">google.load('visualization','1.0',{{'packages':['corechart','controls']}});google.setOnLoadCallback(function(){'drawVisualization'({0},'{1}','{2}');});</script>",
       string.Format("<script type=\"text/javascript\">google.load('visualization','1.0',{{'packages':['corechart','controls']}});google.setOnLoadCallback(function(){{drawVisualization({0},'{1}','{2}','{3}');}});</script>",
        jtt.Serialize(GetData2()),
    "Name Example",
    "Name",
    "Type Example",
    "Type Example",
     "Type,"));

            }
        }


JavaScript
function drawVisualization(dataValues, chartTitle, columnNames, categoryCaption) {
            if (dataValues.length < 1)
                return;

            var data = new google.visualization.DataTable();
            data.addColumn('string', columnNames.split(',')[0], 'name');
            data.addColumn('number', columnNames.split(',')[1], 'price');
            data.addColumn('string', columnNames.split(',')[2], 'type');
            data.addColumn('datetime', columnNames.split(',')[3], 'date');

            for (var i = 0; i < dataValues.length; i++) {

                var date = new Date(parseInt(dataValues[i].Date.substr(6), 10));

                data.addRow([dataValues[i].ColumnName, dataValues[i].Value, dataValues[i].Type, date]);
            }


            var data2 = new google.visualization.DataTable();
            data2.addColumn('string', columnNames.split(',')[0], 'name');
            data2.addColumn('number', columnNames.split(',')[1], 'price');
            data2.addColumn('string', columnNames.split(',')[2], 'type');
            data2.addColumn('datetime', columnNames.split(',')[3], 'date');

            for (var i = 0; i < dataValues.length; i++) {

                var date = new Date(parseInt(dataValues[i].Date.substr(6), 10));

                data2.addRow([dataValues[i].ColumnName, dataValues[i].Value, dataValues[i].Type, date]);
            }


Many thanks for your help and time.
Posted
Comments
Sergey Alexandrovich Kryukov 23-May-14 0:40am    
And what's the problem? It's not clear how this most basic Javascript question can be related to such a long piece of code.
—SA

1 solution

You would not need asking this question if you once got interest in learning one very basic thing: what is JSON? For example, read about it here: http://en.wikipedia.org/wiki/JSON[^].

What, still unclear? Then here is the hint: JSON string is just a fragment of Javascript code. It is already Javascript. Do I even have to continue?

Okay, just in case: JSON string contains a definition of some object (object graph, actually) written with the use of certain Javascript syntax. It means: if you take some JSON string and pass it to the Javascript function eval (which is the Javascript interpreter provided to the scripts), it will get you the object itself. This is explained, for example, here: http://www.json.org/js.html[^].

That's all.

—SA
 
Share this answer
 
v4

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900