Solved

JSOM query for just 1 item

Posted on 2016-11-10
9
25 Views
Last Modified: 2016-11-20
What if my query returns one item every time?  When i remove the while loop, it does not work.  Thanks

var ctx = new SP.ClientContext.get_current();
var customList = ctx.get_web().get_lists().getByTitle('CustomList');
 
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml('<View><Query> <Where><Eq><FieldRef Name='ID' /><Value Type='Counter'>1</Value></Eq></Where></Query></View>');
var listItemCol = customList.getItems(camlQuery);
 
ctx.load(listItemCol);
 
ctx.executeQueryAsync(  
    function(){ 
        var listItems = [];
        var listEnum = listItemCol.getEnumerator();
         
        while (listEnum.moveNext()) {
            var item = listEnum.get_current();
            listItems.push('ID: ' + item.get_id() + ' Title: ' + item.get_item('Title'));
        }
         
        alert(listItems.join("\n")); 
    }, 
    function(sender, args){ alert('Error: ' + args.get_message()); }
);

Open in new window

0
Comment
Question by:Isaac
  • 5
  • 4
9 Comments
 
LVL 82

Expert Comment

by:leakim971
Comment Utility
this is not an issue. you still receive an array... maybe with one object inside but still an array so your current have sense.
0
 
LVL 5

Author Comment

by:Isaac
Comment Utility
Sorry.what about the code below?  I posted the wrong one.

function onQuerySucceeded(sender, args) {
    var listItemInfo = '';
    var listItemEnumerator = collListItem.getEnumerator();
    
 while (listItemEnumerator.moveNext()) {
    
    var oListItem = listItemEnumerator.get_current();
              
                 $('#visn').val(oListItem.get_item('VISN'));
                $('#projTitle').val(oListItem.get_item('Title'));
                $('#station').val(oListItem.get_item('Station_x0020_Number'));
                $('#stationName').val(oListItem.get_item('Station_x0020_Name'));        
                 $('#projNumber').val(oListItem.get_item('Project_x0020_Number'));   
}              
      
}

Open in new window

0
 
LVL 82

Expert Comment

by:leakim971
Comment Utility
I think the problem should be when you've more than one because you're using the same set textboxes to show the value
0
 
LVL 5

Author Comment

by:Isaac
Comment Utility
The problem occurs when I have one set returned.  I have no issues with multiple returns
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 82

Expert Comment

by:leakim971
Comment Utility
Could you describe your problem?
0
 
LVL 5

Author Comment

by:Isaac
Comment Utility
I am using caml query to query my sharepoint list for just 1 item but I get the error noted in one of my comments above.
I am using the caml above which filters the list if "ID" is equal to 1.  When I remove the line below, I get data back data but that's not what I want. I only want the line item where id=1.

camlQuery.set_viewXml('<View><Query> <Where><Eq><FieldRef Name='ID' /><Value Type='Counter'>1</Value></Eq></Where></Query></View>');

Open in new window


Hope that makes sense.

Thanks!
0
 
LVL 5

Accepted Solution

by:
Isaac earned 0 total points
Comment Utility
Never mind.  I've figured out the problem.  My query was wrong.
0
 
LVL 82

Expert Comment

by:leakim971
Comment Utility
You can close the question accepting your own comment as solution
0
 
LVL 5

Author Closing Comment

by:Isaac
Comment Utility
Issue resolved
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

JSON is being used more and more, besides XML, and you surely wanted to parse the data out into SQL instead of doing it in some Javascript. The below function in SQL Server can do the job for you, returning a quick table with the parsed data.
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

763 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

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now