2011-08-17 67 views
0

可能重複:
How to get the text of the selected option of a select using jquery?檢測HTML選項值使用jQuery

我有以下腳本:

<select id = "people"> 
<option value = "0">Choose</option> 
<option value = "1">John</option> 
<option value = "2">David</option> 
</select> 

如何使用jQuery來檢測的價值當前選擇的選項?

即(僞上下的代碼)

if(people.option.text == "Choose"){ 
    //Alert - Please make a selection 
}else{ 
    //Valid - do something 
} 

編輯:代碼不工作

echo("<script>"); 
    echo("$(document).ready(function(){"); 
    echo("$(\"#go\").click(function(e){"); 
    echo("var selText = $(\"#people option:selected\").text();"); 
    echo("if(selText == \"Choose\"){"); 

    echo("}else{"); 
    echo("window.location.href = \"viewprofile.php\";"); 
    echo("}"); 
    echo("});"); 
    echo("});"); 
    echo("</script>"); 

它不斷地觸發else語句和導航離開......

編輯:明白了工作 - >更改.text()和val()

+1

首先,你的`value`屬性值應該用類似雙引號那麼:`` – Tadeck 2011-08-17 12:25:52

+0

對不起,這是一個錯字 - 輸入錯了 – user559142 2011-08-17 12:26:53

+1

你爲什麼使用`echo`? – vol7ron 2011-08-17 13:19:29

回答

1

從你的例子看起來像你想得到的選擇文本,而不是值。

所以有這樣的:

var selText = $("#people option:selected").text(); 
if(selText == "Choose") { 
    //Alert - Please make a selection 
} else { 
    //Valid - do something 
} 

要獲得選擇的值,並檢查它,有這樣的代碼:

var selValue = parseInt($("#people").val(), 10); 
if (selValue == 0) { 
    //Alert - Please make a selection 
} else { 
    //Valid - do something 
} 
0
if ($('#people [value!=0]:selected').length > 0){ 
    //selected 
} else { 
    //not selected 
} 
0

如何:

 $("select option:selected").each(function() { 
      if($(this).text()=="Choose") ... 
      else ... 
     }); 
0
if (jQuery('#people option:selected').val()=="Choose"){ 
} 
else{ 
} 
0

檢查正在使用val選擇的值,然後採取適當的行動。下面顯示在表單提交處理程序中以防止表單提交。您可能還需要考慮在此特定情況下使用validate插件,使該字段成爲必需字段,並且使默認選項無價值。

$(function() { 
    $('form').submit(function() { 
     var selectedPerson = $('#people').val(); 
     if (!selectedPerson || selectedPerson == '0') { 
      alert('you must choose an option for people'); 
      return false; 
     } 
     // continue form validation and submission 
    }); 
}); 
0

獲取所選<option>value,使用:

$('select').val() 

要獲得的選定<option>,使用HTML內容:

$'select :selected').html() 

如果一定要檢查<option>被選中,使用:

if ($('option').is(':selected')) ...