I'm trying to create a search feature by filtering the results from a picture library.
The code that I'm using is written below, but only seems to work with lists and not my library.
Any idea what I'm doing wrong?
<div
style="text-align: left"><script
type="text/javascript">
function getElementsByCssClass(sTagName, sClassName) {
var results = new Array();
var allTagElements =
document.getElementsByTagName(sTagName);
for (i = 0; i < allTagElements.length; i++) {
if(allTagElements[i].className ==
sClassName) results.push(allTagElements[i]);
}
return results;
}<o:p></o:p>
function
getTxt(obj) {
if(obj.innerText) return obj.innerText;
else return obj.textContent;
}<o:p></o:p>
var
lvRows = null;<o:p></o:p>
function
quickSearch(term) {
if(lvRows == null) {
var lvTable =
getElementsByCssClass("table","ms-listviewtable")[0];
lvRows = lvTable.childNodes[0].childNodes;
}
for(i = 1; i < lvRows.length; i++) {
if(getTxt(lvRows[i]).toLowerCase().indexOf(term.toLowerCase()) >
-1) {
lvRows[i].style.display = "table-row";
}
else lvRows[i].style.display = 'none';
}
}</script>Quick Search: <input class="ms-long"
onkeyup="quickSearch(this.value)"
type="text"/></div><o:p></o:p>