Zoeken in alleen twee kolommen, maar wel alle rijen laten zien

Status
Niet open voor verdere reacties.

richard5000

Gebruiker
Lid geworden
24 mrt 2012
Berichten
161
Javascript laten zoeken in alleen twee kolommen en dan deze rijen laten zien?

Ik heb een search javascript gevonden die ik nu gebruik om in een tabel vanuit database (die ik gelijk laat zien) te zoeken.

Nu kijkt het script in alle rijen of hij de ingevulde waarde bij searchveld ziet en laat deze rijen zien.

Nu wil ik dit aanpassen zodat hij niet kijkt in alle rijen, maar in twee kolommen die ik aangeef en als dit positief is dan alle rijen laat zien.

Heb al van alles uitgeproberd, maar hij blijft zoeken in alle rijen of als ik iets aanpas doet de zoekfunctie het niet meer.

Is er wellcht een specialist op javascript die het script voor mij zou willen aanpasssen zodat ik deze alleen kijkt in de kolommen die je in het scrit aangeeft, wil grag leren, maar ben nu al dagen bezig en kom niet meer verder.

Als ik weet waar en hoe ik het script moet aanpassen dan kan ik daarvandaan weer verder, mischien... alvat bedankt.

Hieronder het javascript:

Code:
<script language="javascript" type="text/javascript">
        //define the table search as an object, which can implement both functions and properties
        window.tableSearch = {};
 
        //initialize the search, setup the current object
        tableSearch.init = function() {
        
		//define the properties I want on the tableSearch object
            this.Rows = document.getElementById('data').getElementsByTagName('TR');
            this.RowsLength = tableSearch.Rows.length;
            this.RowsText = [];
            
        //loop through the table and add the data to
            for (var i = 0; i < tableSearch.RowsLength; i++) {
                this.RowsText[i] = (tableSearch.Rows[i].innerText) ? tableSearch.Rows[i].innerText.toUpperCase() : tableSearch.Rows[i].textContent.toUpperCase();
            }
        }
 
        //onlys shows the relevant rows as determined by the search string
        tableSearch.runSearch = function() {
        
		//get the search term
            this.Term = document.getElementById('textBoxSearch').value.toUpperCase();
            
        //loop through the rows and hide rows that do not match the search query
            for (var i = 0, row; row = this.Rows[i], rowText = this.RowsText[i]; i++) {
                row.style.display = ((rowText.indexOf(this.Term) != -1) || this.Term === '') ? '' : 'none';
            }
        }
 
        //runs the search
        tableSearch.search = function(e) {
        
		//checks if the user pressed the enter key, and if they did then run the search
            var keycode;
            if (window.event) { keycode = window.event.keyCode; }
            else if (e) { keycode = e.which; }
            else { return false; }
            if (keycode == 13) {
                tableSearch.runSearch();
            }
            else { return false; }
        }
		</script>
 
Laatst bewerkt:
Zelf weet ik bijna niets van js.
Probeer meer comments in je script toe te voegen. Dan weet je precies wat welke regel doet, en dus waar het probleem zit.
 
Ik weet ook niet veel van het script, maar als ik iets in het script verander dan zoekt hij niet meer, ben hier nu al twee dagen mee bezig en zit aardig vast, vandaar mijn post en wie weet is er iemand met de oplossing.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan