私は、Dev環境で動作するデータリストを使用するアプリケーションを持っていますが、プロダクション環境では参照のない空白のフィールドを返します。私は簡単にオートコンプリート機能を提供しますが、プロダクションで動作するまでデータリストを使用したいと思っています。MVC Datalistはプロダクトサーバでは動作しませんが、Devで動作します
DevはWin7でIE 11.0上のMVC VS 2010で、HTML5テストでは302点です。 プロダクションはServer 2012 R2 StandardのIE 11.0で、Win8.1として報告され、HTML5テストでは312点と評価されています。
多くの比較、チェック、試し、検査、レビューの後、私はデータリストの作業を停止する問題の原因を発見しました。
フィールドが提供するべきIndex.cshtml を示す
@model IEnumerable<CRM_MVC.Models.BranchDiary>
@{
Layout = null;
}
<body>
<div>
<lable>Enter TV Series Name </label>
<input type="text" id="tv" name="series" list="tvseries" autofocus>
<datalist id="tvseries">
<option value="Heroes">
<option value="Lost">
<option value="Fringe">
<option value="CriminalMinds">
<option value="CSIMiami">
</datalist>
<p><strong>Note:</strong> The datalist tag is not supported in Internet Explorer 9 and earlier versions, or in Safari.</p>
</div>
</body>
Internet Explorerのセッション:
MVCコードの表示はIndex.cshtml にこれは問題を特定しようとしている最終的な実験的なコードです。オートコンプリートのドロップダウンはありません。
点検画面が<datalist id=tv>
が誤って同じ行にし、オプションリスト/データリストが誤って後に現れる//データリストを持っていた後、/ DataListコントロールによって終了していることを示しています。
DivのHTMLの編集を右クリックすると、元のHTMLには/ dataalistのない最初のdatalistタグが正しくあり、オプションリストの末尾が/ datalistタグで正しく終端されます。
それはDevの上と生産で同じように機能するかもしれないように追加されたエキストラを停止するために何ができますか?
は、ブラウザのように見える、この場合には、IE5(IE5モードで実行されている技術的に、IE)は、それが元で見つけた「正しい」「エラー」にしようとしています。同じスクリーンショットでは、実際にエラーが発生しているため、 ''といくつかの行「/label>」もあります。だから、IE10モード以上でこれを試してみてください。 –
W3Cのバリデーターを通してあなたのHTMLを実行し、 ''のようなものを修正してください。 –
ご回答いただきありがとうございます。私は時間を感謝し、あなたがこれに与えたと思った。私はあなたが提案したことを試してみます。私はこの問題に取り組むのに多くの時間を費やしてきましたが、過去3日間は成功しませんでした。土曜日の午後になって、html自体が「調整」されていることが分かった。 W3Cバリデーターを使うのはいい考えです。実際のコードをこのテストスニペットと同様に実行します。ご意見ありがとうございました。 –