首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery if else和select标记中的选定值

jQuery if else和select标记中的选定值
EN

Stack Overflow用户
提问于 2010-12-01 09:11:54
回答 4查看 39.9K关注 0票数 1

为什么我不能从我的输入中选择值,我做错了什么吗?

代码语言:javascript
运行
复制
 if($('#target option:selected').text() == "add")
                    $("#add").show(selectedEffect, options, 500, callback );
                 else if ($('#target option:selected').text() == "exit")
                    $("#exit").show(selectedEffect, options, 500, callback );
                 else if ($('#target option:selected').text() == "refuse")
                    $("#refuse").show(selectedEffect, options, 500, callback );
                 else
                    alert('test');
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-12-01 09:19:07

代码语言:javascript
运行
复制
var target = $('#target option:selected').val();

if(target == "add")
    $("#add").show(selectedEffect, options, 500, callback );
else if ($('#target option:selected').text() == "exit")
    $("#exit").show(selectedEffect, options, 500, callback );
else if ($('#target option:selected').text() == "refuse")
    $("#refuse").show(selectedEffect, options, 500, callback );
else
alert('test');

在这里查看http://api.jquery.com/val/

票数 6
EN

Stack Overflow用户

发布于 2010-12-01 09:15:25

如果希望值使用.val() method.,则.text() method将返回所选元素的内部文本。.val()方法将返回所选元素的值属性。同样值得注意的是,当在select元素上使用val()方法时。您不必在选择器中获取选定的选项,只需对select元素本身调用val()即可获得选定的值。

代码语言:javascript
运行
复制
$('#target').val();

如果所选选项的值属性是您想要的。然后,从您的示例可以看出,这是可行的。

代码语言:javascript
运行
复制
switch ($('#target').val()) {
  case "add":
    $("#add").show(selectedEffect, options, 500, callback );
    break;
  case "exit":
    $("#exit").show(selectedEffect, options, 500, callback );
    break;
  case "refuse":
    $("#refuse").show(selectedEffect, options, 500, callback );
    break;
  default
    alert('test');
    break;
}
票数 2
EN

Stack Overflow用户

发布于 2010-12-01 09:27:56

如果您确实需要文本内容,而不是value属性,那么您可能需要to trim whitespace

尽管在您的情况下,您实际上不需要进行==比较。如果您只使用返回的文本来构建选择器,那么您的代码可以大大减少。

代码语言:javascript
运行
复制
   // get (and trim) the text content
var txt = $.trim( $('#target option:selected').text() );

$('#' + txt).show(selectedEffect, options, 500, callback );
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4320376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档