create Autocomplete Text box of sharepoint list using jquery.

create Autocomplete Text box of sharepoint list using jquery




01<link href="/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css">
02 
03<script src="/libs/jquery/1.4/jquery.min.js"></script>
04 
05<script src="/libs/jqueryui/1.8/jquery-ui.min.js"></script>
06 
07<script>
08 
09$(document).ready(function()
10 
11{       var soapEnv = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'><soapenv:Body> <GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'><listName>User Information List</listName><viewFields><ViewFields><FieldRef Name='LastName0' /> </ViewFields></viewFields> </GetListItems> </soapenv:Body> </soapenv:Envelope>";       //Make a call to the List WebService using the SOAP envelope described above.     //The URL is fixed to a Specific Site Root.  Feel free to change this     //to your own fixed root or do some jscript voodoo to figure out where       //Of course in 2010 you can do this with the Client Object Model, or hit     //the list rest Service and return json, so enabling jsonp cross site calls.  
12 
13$.ajax({         url: "/_vti_bin/lists.asmx",
14 
15type: "POST",
16 
17dataType: "xml",
18 
19data: soapEnv,
20 
21contentType: "text/xml; charset=\"utf-8\"",
22 
23success:  function( xmlResponse )         {
24 
25 var domElementArray=$( "z\\:row", xmlResponse );
26 
27   var dataMap = domElementArray.map(function()
28 
29   {    
30 
31   return {
32 
33   value: $(this).attr('ows_LastName0') ,
34 
35   id: $(this).attr('ows_LastName0')
36 
37   };
38 
39   }); 
40 
41            var data = dataMap.get();
42 
43            //Find the Sharepoint Portal Search Box (this is a poor selector, but it is not properly named by sharepoint, well it is but INamingContainer getrs in the way)   
44 
45            $("input. autogool ").autocomplete(   
46 
47            {                 source: data 
48 
49            });
50 
51            }    
52 
53            });//.ajax  
54 
55                        });//docReady
56 
57      </script>
58 
59  
60 
61<input id="Name" class="autogool" style="width: 190px" type="text">

Comments