[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

how to display java JSON array in script

Posted on 2011-09-28
19
Medium Priority
?
380 Views
Last Modified: 2013-11-08
the format is coming like this;
 how to display the length and values?
which method do i need among these eval,stringify,parseJSON ?

[{"LastName1":"iouououououo","FirstName1":"fhhfhfhfh"}]

<script>
var supps = JSON.stringify('<%=suppArray%>');
alert(supps.length)
</script>
0
Comment
Question by:chaitu chaitu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 10
  • 9
19 Comments
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715477
Check this
<html>
<head>
<title>Kiran Test</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
    var jsonObj = [{"LastName1":"iouououououo","FirstName1":"fhhfhfhfh"}]   
    
    // Get length
    alert(jsonObj.length);
    
    // Get Value
    
    $.each(eval(jsonObj),function(i,obj){
      
      alert(obj.LastName1 + " " + obj.FirstName1);
      
    });
     
});
</script>
</head>
<body>

</body>
</html>

Open in new window

0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715571
i need to pass the json array into jsp scriplet in javascript.if i write like this am getting undefined alert message.

$(document).ready(function(){
    var jsonObj = '<%=suppArray%>';  
   
    // Get length
    alert(jsonObj.length);
   
    // Get Value
   
    $.each(eval(jsonObj),function(i,obj){
     
      alert(obj.LastName1 + " " + obj.FirstName1);
     
    });
     
});
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715583
Check whether you are getting data from jsp or not like this

$(document).ready(function(){
    var jsonObj = '<%=suppArray%>';  
   
    // Get length
    alert(jsonObj);
   
    // Get Value
   
    $.each(eval(jsonObj),function(i,obj){
     
      alert(obj.LastName1 + " " + obj.FirstName1);
     
    });
     
});
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715592
getting data from jsp ;length is coming as 1;my assumption is length should come as 2
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715597
Show the data you are getting
0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715604
[{"LastName1":"iouououououo","FirstName1":"fhhfhfhfh"}]
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715625
You are wrong. Json object length is 1. And that object has 2 properties (attributes)
0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715638
var jsonObj = '<%=suppArray%>';   --when you iterate then length is coming but data is not coming.


var jsonObj =[{"LastName1":"iouououououo","FirstName1":"fhhfhfhfh"}] --when you iterate then data is coming.
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715668
Have you tried this


$.each(jQuery.parseJSON(jsonObj),function(i,obj){
      alert(obj.LastName1);
    });

Open in new window

0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715718
yes.still getting undefined
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715731
What is type your getting from JSP OR check like this

  alert(typeof jsonObj);
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715757
My observation is that
1) if the typeof is object you need use eval
2) if the typeof is string then you need  jQuery.parseJSON
0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715835


string::"[{\"SuppLastName1\":\"iouououououo\",\"SuppFirstName1\":\"fhhfhfhfh\"}]"
0
 
LVL 17

Accepted Solution

by:
sonawanekiran earned 1000 total points
ID: 36715893
This should work

$(document).ready(function(){
    var jsonString = "[{\"SuppLastName1\":\"iouououououo\",\"SuppFirstName1\":\"fhhfhfhfh\"}]";
    jsonString.replace(/\\/,"");
    alert(jsonString);
    $.each(jQuery.parseJSON(jsonString),function(i,obj){
     
     alert(obj.SuppLastName1);
    });
     
});
0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715903
its working now.let me check ur code.

    var jsonObj = '<%=suppArray%>';

var jobjson=JSON.parse(jsonObj);
var data = eval('(' + jsonObj + ')');

console.log(typeof jobjson+":typeof jobjson::::jobjson******SuppFirstName1***"+jobjson[0].SuppFirstName1+"****SuppLastName1*****"+jobjson[0].SuppLastName1) //string
console.log(data+":data::::SuppFirstName1::"+data[0].SuppFirstName1+"****SuppLastName1*****"+jobjson[0].SuppLastName1); //string

Open in new window

0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715919
its working now like this data[0].SuppFirstName1 or ur code as well;

i think ur replcaing \\ with "" then its working..
0
 
LVL 20

Author Comment

by:chaitu chaitu
ID: 36715926
what is the extact meaning of this??  jsonString.replace(/\\/,"");
   
0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715927
At first you haven't provide the correct string whatever your are getting

0
 
LVL 17

Expert Comment

by:sonawanekiran
ID: 36715935
String you are getting is "[{\"SuppLastName1\":\"iouououououo\",\"SuppFirstName1\":\"fhhfhfhfh\"}]" like this
which is not format of json string .
Correct format is "[{"LastName1":"iouououououo","FirstName1":"fhhfhfhfh"}] " ##### extra slashes
So I am replacing  slash with blank
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Viewers learn about the “for” loop and how it works in Java. By comparing it to the while loop learned before, viewers can make the transition easily. You will learn about the formatting of the for loop as we write a program that prints even numbers…
The viewer will learn how to implement Singleton Design Pattern in Java.
Suggested Courses

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question