2016-03-19 18 views
1

Ich habe eine Dropdown-Box, wenn onchange zu einer URL umleitet - funktioniert gut. Aber ich möchte nur, dass es die onchange auslöst, wenn die Option eine Klasse von ".level-0" hat - wie mache ich das?Javascript onchange nur mit bestimmten Option Klasse

<script type="text/javascript"> 
    <!-- 
    var dropdown = document.getElementById("cat"); 
    function onCatChange() { 
     if (dropdown.options[dropdown.selectedIndex].value != -1) { 
      location.href = "<?php echo home_url();?>/?sfid=770&_sft_city-type="+dropdown.options[dropdown.selectedIndex].value; 
     } 
    } 
    dropdown.onchange = onCatChange; 
    --> 
</script> 

Antwort

1

In modernen Browsern können Sie classList.contains() verwenden. Wenn Sie ältere Browser unterstützen müssen, müssen Sie direkt auf den String className schauen.

function onCatChange() { 
    var option = dropdown.options[dropdown.selectedIndex]; 
    if (option.value != -1 && option.classList.contains("level-0")) { 
     location.href = "<?php echo home_url();?>/?sfid=770&_sft_city-type="+option.value; 
    } 
} 
+0

Vielen Dank, das hat perfekt funktioniert. – Vik

+0

nette Arbeit @Iareatiga - Ich habe meine falsche Antwort gelöscht. – gavgrif