Java - xml dom empty tag – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Java - xml dom empty tag – Java – Fórum – Programujte.comJava - xml dom empty tag – Java – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Lenka
~ Anonymní uživatel
31 příspěvků
11. 1. 2016   #1
-
0
-

Ahoj, mám takovou otázečku, nevíte někdo co s tím, když mám script na převedení xml do html tabulky a je tam prázdný tag?

Příklad stránky:

https://jsfiddle.net/6p89uwo3/

xml:

<Knihovna>
<kniha>
<Autor>J.K.R. Rowling</Autor>
<NazevKnihy>Harry Potter</NazevKnihy>
<RokVydani>2005</RokVydani>
<Cena>30.00€</Cena>
</kniha>
</Knihovna>

Když jsou všechny údaje o knize vyplněné, je tabulka hezky viditelná, jenomže když je jeden tag prázdný, tabulka se vůbec neukáže. Například:

<RokVydani></RokVydani>
. Zkoušela jsem různé varianty ale došla jsem jedině k tomu, že mi to ukazovalo pokud byl tag prázdná "unknown".

Chtěla bych nějak docílit toho, aby pokud by byl tag prázdný java vrátila znak "-" a pokud by nebyl, zachovala jeho původní hodnotu.

Za každou pomoc budu moc vděčná, děkuji.

Leňa

Nahlásit jako SPAM
IP: 94.112.51.–
Reklama
Reklama
q
~ Anonymní uživatel
219 příspěvků
11. 1. 2016   #2
-
0
-

To je JavaScript, ne Java. Tuhle nebo podobnou chybu ti to nehlásí?

Uncaught TypeError: Cannot read property 'nodeValue' of undefined

Můžeš kontrolovat, jestli tam ta hodnota je, nebo to třeba zabalit do funkce, která bude chybu ignorovat (fujky)

function getValue(elements, defValue)
{
  var value;
  try { value = elements[0].childNodes[0].nodeValue; } catch(e) { value = defValue; }
  return value;
}

function generateHTMLOutput(wrapperId, contentasstring)
{
  var xmlDoc = parseXml(contentasstring);        
  var table="";
  var x = xmlDoc.getElementsByTagName("Knihovna");
  for (i = 0; i <x.length; i++) { 
    table += "<tr><th>Autor:</td><th>" +
    getValue(x[i].getElementsByTagName("Autor"), 'neuvedeno') +
    "<tr><th>Název knihy:</td><th>" +
    getValue(x[i].getElementsByTagName("NazevKnihy"), 'neuvedeno') +
...
Nahlásit jako SPAM
IP: 213.211.51.–
Lenka
~ Anonymní uživatel
31 příspěvků
11. 1. 2016   #3
-
0
-

Nehlásilo mi to nic, každopádně Tvá pomoc všechno opravila.

Mockrát děkuji :-)

Nahlásit jako SPAM
IP: 94.112.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 21 hostů

Podobná vlákna

Java a XML — založil BigBear

Error: query was empty — založil Ilja

Prodej knih PHP5, MySQL, Java, XML — založil Alena Mikanová

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý