奇妙な問題があります。クラシック ASP で構築された Web サイトがあります。何年も問題なく動作していましたが、何らかの理由で、ページの読み込み時に htc の一部が表示されません。次に、これらのオブジェクトに document.All(objName).value のようにアクセスしようとすると、次のようになります: オブジェクトはこのプロパティまたはメソッドをサポートしていません。
何か案が?
ありがとう。
奇妙な問題があります。クラシック ASP で構築された Web サイトがあります。何年も問題なく動作していましたが、何らかの理由で、ページの読み込み時に htc の一部が表示されません。次に、これらのオブジェクトに document.All(objName).value のようにアクセスしようとすると、次のようになります: オブジェクトはこのプロパティまたはメソッドをサポートしていません。
何か案が?
ありがとう。
まず、これは従来の ASP とは何の関係もないことを述べておきたいと思います。これは純粋なクライアント側の問題です。
さて、要点です。悪名高いdocument.all
ものは使用しないでください。クライアント側の VBScript も避ける必要があります。これは IE のみであるため、訪問者の 50% 以上に対して機能しないことを意味します。
要約すると、JavaScript に切り替えて、標準のdocument.getElementById
. 次の行からコードを変更します。
MyValue = document.All(objName).value
代わりにこれに:
var myValue = document.getElementById(objName).value;
objNameが ID ではなく名前の場合、たとえば次の<input type="text" name="MyInput" />
ように使用できます。
var myValue = document.getElementsByName("MyInput")[0].value;
(その名前の要素が 1 つしかない場合)
解決しましたか?この問題が特に IE ブラウザーで発生した場合、次の ASP コード行を追加することで、互換性のあるバージョンにすることができますか?
Response.AddHeader "X-UA-Compatible", "IE=edge,chrome=1"