0

我难住了。第一个输入可以是例如 xyz,它演示了从标签输入中提取值。第二个输入可以是例如使用预先输入的阿拉斯加。第三个将它们组合在一起,例如比利时,但是在单击按钮时,我无法获取 countrySelection 输入中的值。有任何想法吗?
提前致谢。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- BootStrap -->
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <!-- JQuery -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <!-- TagsInput -->
    <link rel="stylesheet" href="http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/dist/bootstrap-tagsinput.css">
    <script src="http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/dist/bootstrap-tagsinput.min.js"></script>
    <!-- Typeahead -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/typeahead.js/0.11.1/typeahead.bundle.min.js"></script>
</head>

<body>
    <div class="container">

        <!-- Tagging section -->
        <div id="Tagging" class="row">
            <div class="form-group">
                <div class="col-sm-2">
                    <label for="userTags">Manual Tags:</label>
                </div>
                <div class="col-sm-10">
                    <input type="text" id="userTags" data-role="tagsinput" class="form-control" />
                    <button type="button" class="btn btn-success pull-right"
                            onclick="alert($('#userTags').tagsinput('items'));">Show Tags</button>
                </div>
            </div>
        </div>


        <!-- This typeahead works but is not 'tagged' -->
        <div id="tagOne" class="row">
            <div class="form-group" id="exampleOne">
                <div class="col-sm-2">
                    <label for="stateSelection">TypeAhead Only:</label>
                </div>
                <div class="col-sm-10">
                    <input id="stateSelection" type="text" class="form-control typeahead" />
                    <button type="button" class="btn btn-success pull-right"
                            onclick="alert($('#stateSelection').val());">Show Tags</button>
                </div>
            </div>
        </div>
        <script>
            var states = ['Alabama', 'Alaska', 'Arizona'];
            var myStates = new Bloodhound({
                datumTokenizer: Bloodhound.tokenizers.whitespace,
                queryTokenizer: Bloodhound.tokenizers.whitespace,
                local: states
            });
            myStates.initialize();

            $('#exampleOne .typeahead').typeahead({
                hint: true,
                highlight: true,
                minLength: 1
            },
                {
                    name: 'states',
                    source: myStates
                });            
        </script>


        <!-- This typeahead works and is 'tagged' but cannot retrieve items -->
        <div id="tagTwo" class="row">
            <div class="form-group">
                <div class="col-sm-2">
                    <label for="countrySelection">TypeAhead with Tags:</label>
                </div>
                <div class="col-sm-10">
                    <div id="exampleTwo">
                        <input type="text" id="countrySelection" data-role="tagsinput" class="form-control" />
                    </div>
                    <button type="button" class="btn btn-success pull-right"
                            onclick="alert($('#countrySelection').tagsinput('items'));">Show Tags</button>
                </div>
            </div>
        </div>
        <script>
            var countries = ['Belgium', 'Finland', 'New Zealand'];
            var myCountries = new Bloodhound({
                datumTokenizer: Bloodhound.tokenizers.whitespace,
                queryTokenizer: Bloodhound.tokenizers.whitespace,
                local: countries
            });
            myCountries.initialize();

            $('#exampleTwo').tagsinput({
                typeaheadjs: ({
                    hint: true,
                    highlight: true,
                    minLength: 1,
                    name: 'countries',
                    source: myCountries
                })
            });
        </script>

    </div>
</body>
</html>
4

1 回答 1

0

想通了...使用了错误的ID。更改为适当的代码

alert($('#exampleTwo').tagsinput('items'))

一切都很好。干杯

于 2016-08-29T16:03:11.953 回答