我目前从循环中得到一个城市列表,如下所示:
<label>City</label>
<select class="input-block-level" name="city">
<option value=" ">Any</option>
<!-- TMPL_LOOP Cities -->
<option value="<!-- TMPL_VAR city_name -->">
<!-- TMPL_VAR city_name -->
</option>
<!-- /TMPL_LOOP -->
</select>'
我如何将其转换为预先输入?我没有能力改变循环代码,所以我必须使用我所拥有的东西。
我尝试了这个并没有奏效:
<input autocomplete="off" class="typeahead" type="text"
data-provide="typehead"
data-items="4"
data-source="[
<!-- TMPL_LOOP Cities -->
"<!-- TMPL_VAR city_name -->",
<!-- /TMPL_LOOP -->
]" />
答案 0 :(得分:0)
看起来你的报价可能有些问题。试试这个语法(注意单引号):
<input data-provide="typeahead" data-items="4" data-source='["purple", "monkey", "dishwasher"]' />
此外,您需要确保数组中没有任何尾随逗号(即["a", "b", "c",]
),因为这会破坏IE。
更新/替代解决方案
另一种方法是使用javascript:
var src = [
<!-- TMPL_LOOP Cities -->
"<!-- TMPL_VAR city_name -->",
<!-- /TMPL_LOOP -->
];
$('#myTypeahead').typeahead({
source: src,
items: 4
});
<input id="myTypeahead" type="text"/>