为什么我在"
属性中使用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/
答案 0 :(得分:2)
这很奇怪,但data-source=["hello", "world"]
有效,即使它看起来不像干净的HTML。
我想知道它是否被视为JSON,在这种情况下,所有元素必须用双引号括起来。请参阅:How to pass an array into jQuery .data() attribute。