Twitter bootstrap typeahead与data-source属性无法正常工作

时间:2013-04-06 04:16:48

标签: twitter-bootstrap typeahead.js

为什么我在"属性中使用data-source符号来表示字符串值一切正常但是当我使用'来表示它们时,bootstrap只识别第一个字符?

我知道在c#和许多其他语言中"'之间的区别是字符和字符串之间的区别但是我第一次看到它在html中被严格使用的是如果是这样的话,为什么JS中没有任何错误。

<div class="container">
    <div class="hero-unit">
        <form>
            <div>
                <label>working typeahead</label>
                <input type="text" data-provide="typeahead" autocomplete="off" data-source='["hello","world"]' />
            </div>
            <div>
                <label>not working typeahead</label>
                <input type="text" data-provide="typeahead" autocomplete="off" data-source="['hello','world']" />
            </div>
        </form>
    </div>

请参阅小提琴:http://jsfiddle.net/H4Qmh/4/

1 个答案:

答案 0 :(得分:2)

这很奇怪,但data-source=["hello", "world"]有效,即使它看起来不像干净的HTML。

我想知道它是否被视为JSON,在这种情况下,所有元素必须用双引号括起来。请参阅:How to pass an array into jQuery .data() attribute