2014-10-27 53 views
-2

現在我有以下代碼:如何從<option>獲得的價值和使用

<form class="demo"> 
<select> 
    <option selected>Selecione sua cidade</option> 
    <option value='JP'>João Pessoa - PB</option> 
    <option value='outros'>Outros</option> 
</select> 
</form> 

我需要的:

當訪問者點擊下拉菜單,選擇一個選項,他們去http://www.example.com 每選項將會轉到不同的地址。

值= 'JP' 去example.com

值= '片尾' 去example2.com

謝謝!

編輯: 我使用這個

<script> 
$('.demo select').change(function(){ 
window.location.href="http://www.example.com"; 
}); 
</script> 
</head> 

但仍無法正常工作,以及如何使用打開不同的鏈接:

選擇選項1 = www.example1。選擇選項2 = www.example2.com

+0

(文件).ready'。 – 2014-10-27 11:46:01

+1

@jSang:*如果*代碼先於頁面上的元素。否則它將無論如何工作。 – 2014-10-27 11:47:24

+1

@jSang不需要,他正在執行代碼'on change' – 2014-10-27 11:48:28

回答

1

擁有的網址作爲選擇的值,並調用一個函數的onchange:

<form class="demo"> 
<select onchange="go(this.value);"> 
    <option selected>Selecione sua cidade</option> 
    <option value='http://someurl.com'>João Pessoa - PB</option> 
    <option value='http://another.com'>Outros</option> 
</select> 
</form> 

<script> 
function go(url){ 
    window.location.href=url; 
} 
</script> 
+0

@IslenoIturiel非常好,很高興我可以幫到你 – Steve 2014-10-27 11:49:06

+0

這是一個體面的Javascript的唯一答案。但是,如果您使用jQuery(按原文),請避免完全使用基於屬性的事件作爲單獨的註冊和處理程序代碼。 – 2014-10-27 11:51:32

1

您可以使用jQuery VAL()函數來檢查選中了哪個值。

form: 

<form class="demo"> 
<select> 
    <option selected>Selecione sua cidade</option> 
    <option value='http://example.a'>João Pessoa - PB</option> 
    <option value='http://example.b'>Outros</option> 
</select> 
</form> 

<script> 
$(function(){ 
    $('.demo select').change(function(){ 
    window.location.href = $(this).val(); 
    } 
}); 
</script> 
+0

是的,但它會比簡單ifs更復雜:) – Robert 2014-10-27 11:47:48

+0

我以爲OP因爲某種原因想要保留這些值。如果不是,那麼你的建議是肯定更好的選擇。 – Robert 2014-10-27 11:49:27

+0

對我來說,最好的選擇是史蒂夫答案,但我真的很感謝你的參與!非常感謝 – 2014-10-27 11:50:49

2

爲什麼不嘗試這樣的事情

<select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);"> 
<option selected>Selecione sua cidade</option> 
    <option value='www.example1.com'>João Pessoa - PB</option> 
    <option value='www.example2.com'>Outros</option> 
</select> 
+2

你應該使用一個函數,而不是傾倒整個代碼內聯,這將是乏味的,當OP要改變跨幾頁 – 2014-10-27 11:47:32

0

請嘗試是這樣的:如果你使用`jQuery`,你應該在`$包裹腳本

<form class="demo"> 
<select id='drop'> 
    <option selected>Selecione sua cidade</option> 
    <option value='JP'>João Pessoa - PB</option> 
    <option value='outros'>Outros</option> 
</select> 
</form> 

<script> 
$("#drop").change(function() { 
    var res = this.value; 
    if(res=='JP') 
    { 
      document.location.href = "http://example.com"; 
    } 
    else if(res == 'outros') 
    { 
     document.location.href = "http://example2.com"; 
    } 
    }); 
</script>