2010-03-08 9 views
5
Error: End tag for 'optgroup' which is not finished. You have probably failed to 
include a required child element. Hence the parent element is "not finished", 
not complete. 

Seçme seçeneklerinde böyle bir şey gerçekleştirmek istiyorum.<optgroup label = '-------'></optgroup>, xhtml doğrulama hatası verir

USA 
UK 
-- 
Afghanistan 

Sonra olmayan seçilebilir bölücü üstünde birkaç önemli ülkeleri koymak ve istediğiniz ve daha sonra kalan ülkelerin listesini vermiştir.

Bu ayırıcıyı boş 'optgroup' kullanarak yerleştiriyorum. Tüm tarayıcılarda mükemmel çalışır, doğrulama hatası alırım.

Bunu uygulamak için başka yaklaşımlar neler olabilir?

cevap

5

, sadece bir <option> kullanmak ve onu devre dışı bırakılabilir yapabilirsiniz:

<option disabled='disabled'>--</option> 

seçilebilir olmayacak Yani sen gibi bir şey kullanmak gerekir. Ayrıca eğer ben olsaydım, bir m-tire ve iki tire kullanmazdım:

+0

Bunun semantik olarak geçerli olduğunu bilmiyorum –

+0

"semantik olarak geçerli" - bu ne anlama geliyor? Doğrulanır, çünkü "devre dışı", "

0

Bunun için bir optgroup kullanmayın. Sadece kod

+0

Ardından seçilebilir. – SLaks

+0

@SLaks bir seçenek devre dışıysa seçilemez. Şimdi, ilgili XHTML DTD'de "devre dışı" özniteliğinin tamam olup olmadığını bilmiyorum. – Pointy

1

herhangi bir kod gönderilmeyen bu <option val="-">--</option> koymak, ama böyle bir şey var bahis:

<select> 
    <option>USA</option> 
    <option>UK</option> 
    <optgroup label="---"></optgroup> 
    <option>Afghanistan</option> 
    <option>...</option> 
</select> 

sizin OPTGROUP hiçbir seçenek öğeleri içerir çünkü bu geçersiz.

@ZippyV yazdıklarını benzer
<select> 
    <option>USA</option> 
    <option>UK</option> 
    <optgroup label="---"> 
     <option>Afghanistan</option> 
     <option>...</option> 
    </optgroup> 
</select> 
+0

Bu, seçenek grubu seçeneklerini belirler. – user266307