3

In the sharepoint list, I see the "Find an item" search box. I input a number, but cannot get any result. But actually the item with this number as Title really exists.

I tried with 2 methods as below. But I still cannot get any result. http://www.enjoysharepoint.com/Articles/Details/sharepoint-2013-find-an-item-search-box-does-not-return-20956.aspx

SharePoint 2013: "Find an Item" search box does not return results

What else should I check? Thanks very much in advance.

enter image description here

4
  • Have the item been indexed? Try to search for 86* and see if you get any results. Sep 9, 2015 at 6:21
  • I am quite new to sharepoint. I tried with 86*, still no result. By the way, what is the meaning of indexing the items?
    – Sun Robin
    Sep 9, 2015 at 6:59
  • Check crawling is functioning properly. This link will help you to check crawling: technet.microsoft.com/en-us/library/jj219814.aspx
    – P S
    Sep 9, 2015 at 7:07
  • 1
    @Sun Robin, see P S link. You need to have a functioning search service that actually crawls ( goes through ) and index items in an index ( building a library basically ). Sep 9, 2015 at 7:08

2 Answers 2

1

Select Site Settings. Under Search, select Search and offline availability. Make sure that Allow this site to appear in Search results is set to Yes. After the setting is set to Yes, the site should be indexed during the next scheduled crawl.

0

I hate that searchbox in a List VIEW,

Users expect immediate feedback, the moment they start typing something should happen.

It is easy to achieve.

All you have to do is attach a KeyUp events to that search box (or above it in the DOM)
One for every List Item Row! So it only takes a few lines of code

Create a Calculated Column "LiveSearch", set the datatype=Number, and paste the Formula:

!!Replace [Titel] with [Item number] or concatenated fields you want to search on,

="<img src=""_layouts/images/blank.gif"" onload=""{"
 & "var TR=this;while(TR.tagName!='TR'){TR=TR.parentNode}"
 & "TR.parentNode.parentNode.parentNode.addEventListener('keyup',"
 & " (function(keyevent){"
 & " this.style.display='" & [Titel] & "'.indexOf(keyevent.srcElement.value)<0"
 & " ?'none':'table-row'}).bind(TR))"
 & "}"">" 

This hide/shows the whole TableRow for any matching character in the SearchBox

This ofcourse adds extra HTML to the Page, In SP2013 it is better to use a CSR solution, but the same effect requires some 20 lines of boilerplate code to get it work.

This solution use the loading of an image in every row, so it 'knows' which TR to work on.

More on the technique of using JS/HTML in a Calculated Column: https://www.365csi.nl/vm365com/#/How

Step by step instruction at: https://www.365csi.nl/vm365com/#/Create/SearchFilter

This creates:

[![][1]][1]

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.