我正在尝试在select的值更改为特定值时提醒用户,但我的页面中有多个select(每个用户一个)。
以下是我尝试的内容:http://jsfiddle.net/mEFQq/
$(document).ready(function() {
$("select").change(function(){
if($(this).text() == "Chef")
{
alert();
}
});
});
我希望当select选择更改为“Chef”时会发出警告。
我该怎么做?
答案 0 :(得分:4)
使用选择时,您需要使用.val()函数,而不是.text()函数。
您还需要与value属性(本例中为1)进行比较,而不是实际文本值。
代码如下所示:
$(document).ready(function() {
$("select").change(function(){
if($(this).val() == "1")
{
alert('value 1 (wich refers to Chef) got selected');
}
});
});
答案 1 :(得分:0)
您的问题是,使用.text()
方法会返回select
元素上的所有文字,而不仅仅是“已选择”的文字,如果您尝试使用.val()
,则选择元素的value
属性(如果它们没有设置value
,则可以使用.val()
)。
我建议您将if
更改为:if($(this).children(':selected').text() == "Chef")
,如下所示:
$("select").change(function(){
if($(this).children(':selected').text() == "Chef")
{
alert();
}
});
});
答案 2 :(得分:0)