使用Semantic UI下拉菜单显示所选选项

时间:2016-12-21 21:51:29

标签: javascript jquery html css semantic-ui

我在语义UI下拉菜单中遇到了一些问题:

  1. 我似乎无法得到jquery来处理它。我尝试将名为“tagline”的类添加到其中,这将在单击时触发警报,但它不起作用。然而,添加到其他元素的类“标语”可以正常工作

  2. 我无法从菜单选项中获取所选值。当我尝试:$('#idDropDown').dropdown('get value'));时,它会给我结果“object Object”。这是代码:

  3. show.ejs:

    <% include ../partials/header %>
    <div class = "container-fluid text-center" style = "margin-top: 100px;">
        <h1 class = "student-title">Student's homepage</h1>
    </div>
    
    <!-- Testing -->
    <div class = "container text-center student-list">
        <div id = "dropdownMenu" class="ui fluid search selection dropdown">
            <input type="hidden" name="student">
            <i class="dropdown icon"></i>
            <div class="default text">Select a student</div>
            <div class="menu">
                <% students.forEach(function(student) { %>
                    <div class = "item" value = "<%=student._id%>" >
                        <%= student.name.first %> <%= student.name.last %>
                    </div>
                <% }); %>
            </div>
        </div>
    </div> 
    <!-- End of div-->
    
    
    <% include ../partials/footer %>
    

    main.js

    /* global $ */
    
    $(document).ready(function(){
        $('.ui.dropdown').dropdown();
    });
    
    $(".tagline").on("click", function() {
        getValue();
        // console.log(test);
    });
    
    $('.message .close').on('click', function() {
      $(this).closest('.message').fadeOut();
    });
    
    
    
    function getValue(){
        alert($('ui.dropdown').dropdown('get value'));
    }
    

    我第一次使用Semantic UI,因为它可以更加自定义并且有更多的组件(我认为)。任何帮助将不胜感激。非常感谢你!

    编辑:

    1. 这是jsfiddle:
    2. https://jsfiddle.net/7hw9txns/1/

      1. 关于我的问题1,jQuery在这里运行得很好,但它在我的应用程序中不能用于Cloud9 IDE(jQuery可以与我的应用程序的任何页面中的任何其他组件一起使用,而不是这个特定的页面和下拉菜单)

1 个答案:

答案 0 :(得分:2)

我意识到你的代码还可以,但是它没有用,因为你没有在dropdown id上调用该行为,但是你调用了一般名称(ui.dropdown)。
我在plugin读到了:

Get value行为) - 返回当前下拉输入值
 在这种情况下,它只返回所选选项的两个字母。

Get text行为) - 返回当前下拉文字
  在这种情况下,它会将整个选定的文字返回到dropdown 上的每个项目。

最后,这是我改变的小提琴:fiddle link

希望我一直很清楚!