如何从html中的多个下拉菜单中仅选择唯一值?

时间:2016-02-12 11:42:54

标签: javascript jquery drop-down-menu

嗨我需要从多个下拉菜单中选择唯一值,dropwown框不能解决它们动态呈现的问题,因此可以在下拉框中根据下拉值显示任意数量的下拉列表。

所以我想如果用户选择已在任何其他下拉列表中选择的相同值,则应该在那里生成警报消息

cscript 35359922.vbs
found 3 nodes.
1 a
2 Vowel

我怎样才能实现这一点。

由于

3 个答案:

答案 0 :(得分:1)

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>

    $(document).ready(function () {

        $('select').change(function () {

            if ($('select option[value="' + $(this).val() + '"]:selected').length > 1)
            {
                alert('you have already selected this item')
            }
        });
    });
</script>
</head>

<body>


<select name="profile1" id="profile1" >
        <option value="1">Delhi</option>
        <option value="2">Mumbai</option>
        <option value="3">Kanpur</option>

    </select>

<select name="profile1" id="profile2" >
        <option value="1">Delhi</option>
        <option value="2">Mumbai</option>
        <option value="3">Kanpur</option>

    </select>

<select name="profile1" id="profile3" >
        <option value="1">Delhi</option>
        <option value="2">Mumbai</option>
        <option value="3">Kanpur</option>

    </select> 
</body>

</html>

答案 1 :(得分:0)

首先,您应该自己研究一下,不要指望我们为您提供完整的代码。

有了这个说你可以相对容易地做到这一点,你需要检查其他两个其他选择框的选择值,改变不应该这么难

更改功能:https://api.jquery.com/change/

价值函数:http://api.jquery.com/val/

答案 2 :(得分:0)

可能你可以使用它。老实说,这很容易,像我这样的新手可以编写这段代码。

正如专家所说,在发布问题之前请善意研究。

$("#profile2").change(function()
{
    var firstvalue=$("#profile1 option:selected").text();
    var secondvalue=$("#profile2 option:selected").text();
    if(firstvalue == secondvalue)
    {
        //alert message 
        //do something
    }
});


$("#profile3").change(function()
{
    var firstvalue=$("#profile1 option:selected").text();
    var secondvalue=$("#profile2 option:selected").text();
    var thirdvalue=$("#profile2 option:selected").text();
    if(firstvalue == thirdvalue || thirdvalue == secondvalue )
    {
        //alert message 
        //do something
    }
});