2016-05-14 1 views
0

Ich habe Stück Code, der gut funktioniert, aber ich möchte es verfeinern, um die Länge einer Tabelle zu erkennen und eine Beschreibung basierend darauf zu geben.Verwenden Sie Jquery, um Länge der Tabelle für spezifische Beschreibung zu erkennen

Dies ist ein Produktkatalog im Grunde, wo ich Wordpress Einträge verwenden, um eine Beschreibung des Produkts zu zeigen. Die meisten Einträge enthalten eine Tabelle, einige nicht. Wenn eine Tabelle existiert, wird eine Verknüpfung zu einem bestimmten Punkt in der Tabelle erstellt und wenn darauf geklickt wird, geht der Besucher dorthin. Wenn KEINE Tabelle gefunden wird, wird eine entsprechende Beschreibung gegeben.

Die Verfeinerung ich machen möchte, ist eine weitere Bedingung hinzuzufügen, wo, wenn die Länge der Tabelle ist, sagen wir, nur 4 Zeilen oder weniger gibt es eine andere Beschreibung für diesen Zustand wie

elTitulo.after("<a href='#tablesp' class='speclink'>Ver BREVE Tabla de Especificaciones</a> "); (BREVE = BRIEF) 

und ich bin mir nicht sicher, wie ich diesen Teil integrieren soll. Benötigt es eine Bedingung innerhalb der bestehenden Bedingung? Oder eine ganz neue Bedingung?

Antwort

1

Dies sollte funktionieren, aber Ihr Code geht davon aus, dass nur eine Tabelle auf der Seite vorhanden ist. Auch das Hinzufügen einer div Einsicht Ihrer tbody ist auch keine gute Idee.

jQuery(document).ready(function($) { 
    var elTitulo = $(".entry-title"); 
    $("tbody").before("<div id='tablesp'></div>"); 
    if ($('table').length) { 

     if($('table tbody tr').length < 4){ 
     // There are less then 4 rows (not including 4) 
     elTitulo.after("<a href='#tablesp' class='speclink'>Ver BREVE Tabla de Especificaciones</a> "); 
     } else { 
     elTitulo.after("<a href='#tablesp' class='speclink'>Ver Tabla de Especificaciones</a> "); 
     } 

    } else { 
     elTitulo.after("<p class='speclink'>(No hay tabla especial de especificaciones. Breve descripción disponible)</p> "); 
    } 
}); 
+0

Dank usbekjon. Ja, gute Annahme. Es gibt nur eine Tabelle pro Eintrag. In Bezug auf das Div in der Tabelle, das ist, weil ich versuchte, die before() -Methode Targeting der 'Tabelle' Tag und es hat nicht funktioniert. Nicht sicher warum. – Agustin

+0

Ich habe auch das ** div ** in der Tabelle Situation behoben. Ich denke, es war nur ein Syntaxproblem des Mischens "mit". Danke! – Agustin

Verwandte Themen