1

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コードを使用して動的に更新する...

初めて(初期化コードで)更新を行うと機能しますが、このデータリストコンテンツのその後の更新は、インスペクターに表示されますが、表示されるドロップダウンに反映されません...

ポリフィルを使用する前は FF で動作していましたが、Safari はデータリストをサポートしていません。

私は何か見落としてますか?または、ドロップダウンの更新を強制することは可能ですか?

4

1 に答える 1

1

はい、これにはメソッドがあります (updatePolyfill、htmlPolyfill など)。これは、dynamic shivingおよびhereに記載されています。

また、動的なデータリストを使用した簡単な例を見つけることもできます(ただし、データ サーバーは最初の要求で少し遅くなります)。

$('datalist > select').htmlPolyfill('<option value="yeah" />');

いくつかの構成オプションについては、このデモも参照してください: http://jsfiddle.net/trixta/7DETa/

于 2013-05-09T15:42:25.467 に答える