2013-10-30 2 views
0

jquery 드롭 다운 메뉴로 작업하고 있습니다. 거의 끝났지 만, 어떤 이유로 나는 onChange 작업을 할 수 없습니다.onChange가 작동하지 않습니다.

<select id="cd-dropdown" class="cd-select" ONCHANGE="location = this.options[this.selectedIndex].value;" > 
    <option value="-1" selected>Selecione uma categoria</option> 
    <option value="1" class="icon-google-plus">Massa Muscular</option> 
    <option value="2" class="icon-facebook">Resistência</option> 
    <option value="http://www.google.com" class="icon-twitter" >Vitaminas</option> 
    <option value="4" class="icon-github">Emagrecimento</option> 
</select> 
+0

어떤 브라우저 (및 버전) 당신이 가진 문제가 있습니까? –

+0

무엇이 문제입니까? –

+1

브라우저를 리디렉션하려면'location'을'document.location' 또는'location.href'로 참조해야합니다. – steveukx

답변

1

사용 location.href :

<select id="cd-dropdown" class="cd-select" 
     ONCHANGE="location.href = this.options[this.selectedIndex].value;" > 
------------------^ 

설명

키워드 location는 개체입니다. location 개체의 href 속성은 URL을 말합니다.

전체 코드 :

<select id="cd-dropdown" class="cd-select" ONCHANGE="location.href = this.options[this.selectedIndex].value;" > 
    <option value="-1" selected>Selecione uma categoria</option> 
    <option value="1" class="icon-google-plus">Massa Muscular</option> 
    <option value="2" class="icon-facebook">Resistência</option> 
    <option value="http://www.google.com" class="icon-twitter" >Vitaminas</option> 
    <option value="4" class="icon-github">Emagrecimento</option> 
</select> 
+0

브라우저에서 브라우저로의 차이점은 Chrome에서 코드가 올바르게 작동하기 때문에 '위치'(분명히 옵션 인 Vitaminas 만 사용) 때문입니다. – Archer

+0

"window.location = 'http://www.example.com'은 window.location.href = 'http://www.example.com'의 동의어입니다." https://developer.mozilla.org/en-US/docs/Web/API/Window.location –

+1

에서 인용 된 바와 같이 이는 이상합니다. 크롬도 사용하고 있으며 모질라에서도 테스트를 마쳤습니다. 지금까지는 성공하지 못했습니다. – Blackk

0

나는이 간단한 코드를 선호하는 것 : 여기

onchange="location.href = this.value;" 

은 선택 객체입니다. 여기

귀하의 코드 :

<select id="cd-dropdown" class="cd-select" onchange="location.href = this.value;" > 
    <option value="-1" selected>Selecione uma categoria</option> 
    <option value="1" class="icon-google-plus">Massa Muscular</option> 
    <option value="2" class="icon-facebook">Resistência</option> 
    <option value="http://www.google.com" class="icon-twitter" >Vitaminas</option> 
    <option value="4" class="icon-github">Emagrecimento</option> 
</select> 
+0

여전히 작동하지 않았습니다. 어쨌든 고마워. – Blackk

1

HTML :

<select id="cd-dropdown"> 
    <option disabled selected>Select</option> 
    <option value="http://www.facebook.com">Facebook</option> 
    <option value="http://www.google.com">Google</option> 
</select> 

JQuery와 :

$("#cd-dropdown").on('change', function(){ 
    var url = $("option:selected", this).val(); 
    window.location = url; 
}); 

Whenever a new value is assigned to the location object, a document will be loaded using the URL as if window.location.assign() had been called with the modified URL.

관련 문제