2016-08-09 43 views
0

Ich habe den folgenden Code, der ein Element pro Spalte im Browser druckt.Wie bewerten Sie, ob im Browser Daten vorhanden sind?

Was ich tun möchte, ist auf einer anderen Seite, wenn eine Schaltfläche geklickt wird, um zu überprüfen, ob eine Instanz dieses Elements auf der Seite gefunden wird.

Seite, die Artikel ausdruckt

<html> 

<head> 
    <title> <%= title %></title> 
</head> 

<body> 
    <table> 
    <% for(var i=0; i< rows.length; i++) { %> 
     <tr> 
     <% for(var f=0; f< fields.length; f++) { %> 
     <td> 
      <%= rows[i][fields[f].name] %> 
     </td> 
     <% } %> 
     </tr> 
     <% } %> 

    </table> 
</body> 

</html> 

Code, wenn Artikel existiert in dieser Seite

$("#checkHashtag").click(function() { 
    var hashtag = document.getElementById("codeInput").value; 
// Check to see if user enter hashtag exist in that page 
if(hashtag == ....**(thats where i need help)** 

}); 

Vielen Dank im Voraus

Im Folgenden überprüfen sollten, ist die Datenseite enter image description here Ich möchte Überprüfen Sie, ob auf Knopfdruck eine Instanz dieser Daten auf dieser Seite vorhanden ist

+0

Sie werden klarer sein müssen? Möchten Sie überprüfen, ob TRs oder TDs in der Tabelle ausgegeben werden? – adeneo

+0

Ihr Code produziert kein Element mit der ID 'codeInput' oder gar' checkHashtag' - so kämpfen Sie von Anfang an einen verlorenen Kampf –

+0

Ich habe ein Update in meinem ursprünglichen Beitrag hinzugefügt – John

Antwort

1

OK, basierend auf Ihren Kommentaren oben, wenn Sie überprüfen wollen, ob die Hash in dem DOM auf einer Seite sind Sie gerade auf, könnten Sie so etwas tun:

$("#checkHashtag").click(function() { 
 
    var hashtag = document.getElementById("codeInput").value; 
 
if(hashtag) { 
 
    var cells = $('td'); 
 
    cells.each(function() { 
 
    if($(this).text() == hash) { 
 
    console.log('foo'); // Do something if hash is found 
 
    } 
 

 
});

Wenn Sie die Liste der Werte von mehreren Seiten zuzugreifen und sie dann in den DOM Speicherung ist nicht die beste Strategie. Sie könnten entweder einen Endpunkt erstellen, um die Werte über eine Ajax-Anforderung zu erhalten, oder die einfachere, weniger elegante Lösung wäre, Ihre Werte mithilfe von Templates auf jeder Seite in einem Skript-Tag zu platzieren, sodass Sie einfach auf die Variable zugreifen können Client-Seite.

<script> 
 
    var hashes = [1234, 1235, 1236]; 
 
</script>

+0

Youre Recht in Dom speichern ist nicht die beste Strategie für das, was ich versuche zu tun. Ich habe hier eine neue Frage gestellt und hoffentlich könntest du helfen. http://stackoverflow.com/questions/38861219/check-mysql-query-based-on-an-input-value-using-nodejs – John

1

Wenn es einen Wert in var hashtag = document.getElementById("codeInput").value; gibt, könnte es einen Wert haben, der wahr sein könnte. So können Sie einfach tun:

if(hashtag) { 
    // do something 
} 
+0

Ich habe ein Update in meiner ursprünglichen hinzugefügt post – John

+0

@John Ihre erste Post ist unvollständig. Es enthält nicht das Element mit der ID "codeInput". –

+0

Nun einfach das Element, das eine ID hat, ist nur ein Eingabefeld, das der Benutzer eingibt, und dann, wenn sie auf die Schaltfläche klicken, wenn ich versuche, auf einer anderen Seite zu überprüfen, sagen/Hashtag, wenn es eine Instanz davon gibt Artikel, die existieren – John