2013-05-03 29 views
2

我正在寫一個小的jQuery函數,當用戶更改下拉列表的值時,該函數會更改表單字段的值。jQuery中的切換語句不起作用

我的功能改變數據工作,但由於某種原因,它不是「切換」。任何人都可以點亮一下嗎?

下面是代碼:

$('#linktype').change(function(){ 
var thisType = $('#linktype').val(); 
switch(thisType){ 
    case 'facebook': 
    changeURL("http://facebook.com/"); 
    break; 
    case 'twitter': 
    changeURL("http://twitter.com/"); 
    break; 
} 
}); 
function changeURL(value){ 
$('input[id="link"]').val(value) ; 
}; 
+0

添加完整代碼.. – 2013-05-03 09:49:27

+1

.VAL()返回一個字符串。所以你的案例也應該是字符串......就像'臉譜' – Jeroen1984 2013-05-03 09:49:36

+0

沒有這段代碼拋出任何錯誤? – 2013-05-03 09:49:58

回答

2

facebook應該是文字像'facebook'

$('#linktype').change(function(){ 
var thisType = $('#linktype').val(); 
    switch(thisType){ 
    case 'facebook': 

否則,你需要有一個與字符串值

var facebook = 'facebook' 
$('#linktype').change(function(){ 
var thisType = $('#linktype').val(); 
    switch(thisType){ 
    case 'facebook': 
0
稱爲 facebook變量的字符串

case說明符中as女巫聲明不應該是變量,他們需要是文字字符串或實際值。在你的情況下,我希望你只是錯過了Facebook的報價。

0

嘗試

switch($('#linktype').val()) { 
     case 'facebook': 
      // do something 
      break; 
     case 'twitter': 
      // do something 
      break; 
    } 
0

試試這個:

$('#linktype').change(function(){ 
var thisType = $('#linktype').val(); 
    switch(thisType){ 
    case 'facebook':