nasıl

2015-12-16 28 views
6

enter image description herenasıl

Merhaba ben kaldırmak istediğiniz kimliği olmadan td silmek için "Orduda görev var mı?" ve Cevap "Hayır" ise "Hayır", ancak göstermesi gerekenden "Evet" olduğunda.

i denedim ama sen zaten yaptığım gibi bütün td öğelerini almak ve daha içlerindeki yayılma elemanlarını alabilirsiniz

<script type="text/javascript"> 
(function(){ 
    for(i = 0; (a = document.getElementsByTagName("td")[i]); i++){ 
    if(document.getElementsByTagName("span")[i].innerHTML.indexOf('Have you served in the military') > -1){ 
    document.getElementsByTagName("td")[i].style.display = "none"; 
    } 
    } 
})(); 
</script> 
+6

kimliğine sahip kimliğini bulabilir ve üst öğeyi numaralı telefondan bulabilir ve silebilirsiniz. – sagar43

+0

Mükemmel çalışıyor gibi görünüyor -> ** https: //jsfiddle.net/4g7rxm43/** – adeneo

cevap

0

çalışmıyor ne olursa olsun:

var tds = document.getElementsByTagName('TD'); 
for (var i = 0, l = tds.length; i != l; ++i) { 
    var spans = tds[i].getElementsByTagName('SPAN'); 
    for (var j = 0, l2 = spans.length; j != l2; ++j) { 
     var span = spans[j]; 
     if ((span.textContent = span.innerText).indexOf('Have you served in the military') != -1) { 
      span.style.display = 'none'; 
      break; 
     } 
    } 
} 

DÜZENLEME: OP "Hayır" içeriğine sahip bir td varsa, yalnızca açıklığı silmek istiyor (ayrıca td öğesini sil)

var tds = document.getElementsByTagName('TD'); 
var tdsLength = tds.length; 

var answerNoFound = false; 
for (var i = 0; i != tdsLength; ++i) { 
    var td = tds[i]; 
    if ((td.textContent = td.innerText) == 'No') { 
     td.style.display = 'none'; 
     answerNoFound = true; 
     break; 
    } 
} 

if (answerNoFound) 
    for (var i = 0; i != tdsLength; ++i) { 
     var spanFound = false; 
     var spans = tds[i].getElementsByTagName('SPAN'); 
     for (var j = 0, l = spans.length; j != l; ++j) { 
      var span = spans[j]; 
      if ((span.textContent = span.innerText).indexOf('Have you served in the military') != -1) { 
       span.style.display = 'none'; 
       spanFound = true; 
       break; 
      } 
     } 
     if (spanFound) 
      break; 
    } 
+0

Cevabınız "Hayır" ise hem soruyu hem de cevabı kaldırmam gerekiyor. "Hayır" td'de de var ama bundan sonra hiçbir kimliğiniz yok –

+0

'u kaldırmak zorundayım Yüklenen görüntüde sadece "Evet" içerikli bir td öğesi var ama cevabımı düzenleyeceğim ... – DavidVollmers

0

Öğenin alt öğelerini kullanabilir veya sadece bir yer değiştirebilir, hatta gizleyebilir ve gösterebilirsiniz. Eğer bir başvuru formu ve document muhtemelen daha açıklıklı olup gibi

0

görünüyor, td elemanları dışında bazı, sen td karşı spans doğru seçim alamadım bu yüzden.

Dolayısıyla, span içeriğini karşılaştırarak, büyük ihtimalle, td kodunuzun içinde yer alan span değil.

<script type="text/javascript"> 
    (function(){ 
     for(i = 0; (a = document.getElementsByTagName("td")[i]); i++){ 
     if(a.getElementsByTagName("span")[0].innerHTML.indexOf('Have you served in the military') > -1){ 
      a.style.display = "none"; 
     } 
     } 
    })(); 
</script> 

ben mi çekeyim senin td ilmek içine span seçmek için ise bildiri değiştirdi.