我使用JQuery 1.9.1,Modernizr 2.6.2(使用yepnope进行自定义构建)和Webshim库。 我在Mac OSX 10.7.5上的Safari 6.0.4和Firefox 20.0上进行了测试
我有一个HTML5页面,其中我有一个数据列表定义如下:
<input id="reference_category_name" list="category_list" class="search-start" autocomplete="on" required />
<datalist id="category_list">
<select>
<option></option>
</select>
</datalist>
我使用javascript代码动态更新...
它是我第一次进行更新时(在我的初始化代码中),但是这个数据列表内容的后续更新虽然在检查器中可见但未反映在显示的下拉列表中...
在我使用polyfill之前,它在FF上工作,但Safari不支持数据列表。
我错过了什么吗? 或者是否可以强制刷新下拉列表?
答案 0 :(得分:1)
是的,有一种方法(updatePolyfill,htmlPolyfill等)。它记录在dynamic shiving和here中。
您还可以找到一个带有dynamic datalist的简单示例(尽管数据服务器在第一次请求时有点慢)。
$('datalist > select').htmlPolyfill('<option value="yeah" />');
有关一些配置选项,请参阅此演示:http://jsfiddle.net/trixta/7DETa/