如何根据下拉框中的部分显示/隐藏?

时间:2010-09-08 19:49:37

标签: jquery

我有以下代码。我想要做的是在下拉列表中选择“是”时显示名为“上传者”的div。它目前无法正常工作。

$(document).ready(function() {
  $("#uploader").hide();
  $("#CitedIn").change(function() {
    if (("#CitedIn").val()  == 'yes')
       $("#uploader").show("fast");
    else $("#uploader").hide("fast");
    });
});

<table>
    <tr><td>Need item(s)?</td><td>
        <select id="CitedIn" name="CitedIn" size="1"  tabindex="13">
            <option value="none">(Select One)</option>
            <option value="Yes">Yes</option>
            <option value="No">No</option>
        </select>
    </td></tr>
</table>

<div id="uploader">
    Something...
</div>

如何使其按预期工作?

2 个答案:

答案 0 :(得分:2)

javascript中的字符串比较区分大小写,您要将Yesyes进行比较。

此外,您错过了此行的$来电

if (("#CitedIn").val()  == 'Yes')

应该是:

if ($("#CitedIn").val()  == 'Yes')
    ^

点击此处:http://jsfiddle.net/Lpg2k/

答案 1 :(得分:0)

if语句

中的声明之前没有$
  $("#CitedIn").change(function() { 
    if ($("#CitedIn").val()  == 'Yes')
       $("#uploader").show("fast"); 
    else $("#uploader").hide("fast");
    });

正如其他人所说,你还需要比较相同的案例,Yes!= yes

http://jsfiddle.net/Em2WD/