JavaScriptはindex.htmに記述。index.htmからみて「./file/a.txt」を探し、存在する場合は
index.htmに「あった」と表示。存在しない場合は「なかった」と表示。
http://tohoho.wakusei.ne.jp/wwwssi.htm
そのファイルは現在ありません
Javascriptでテキストファイルの存在を確認するのは無理です
SSIを使いましょう
P.S.無理 win.openで小細工してやってみましたが、ファイルが存在しなかった場合に返すサーバーテキスト 404.htm等と、ページがあったときの区別がJavascriptでは区別できないようです
http://www.atmarkit.co.jp/fxml/askxmlexpert/032makelist/032makel...
ファイルの一覧の取得と、そのファイルのタイトル一覧作成
http://www.microsoft.com/japan/developer/library/jpisdk/dhtml/re...
MSDN Online Japan : File Not Found
ご要望とは多少異なりますが、ファイルに特定のデータを入れることができるのなら、以下のようなトリックも可能です。
<img src=”a.jpg” onload=”alert(’img:load’);” onerror=”alert(’img:error’);”>
a.jspがイメージファイルならonload、ファイルが無かったりイメージファイルでなければonerrorイベントが発生します。
(リファレンスにはあるのですが)<script>タグではonloadやonerrorイベントは発生しません。
ですが、以下のようにすれば、a.txt内にJavaScriptが記述されているかどうかは判別できます。
-----a.txt---------
var vLoad = true
-----a.txt---------
<script language=”javascript” type=”text/javascript” src=”js.txt”></script>
<script language=”javascript”>
<!--//
//この関数には、外部JSファイル内に記述した内容を呼び出すために用意しています。
var vload
//外部ファイルが準備OKかどうかをチェックする
if (vload){
document.write(”おさがしのファイル、みつかりやした(ロード完了)”);
}
else{
document.write(”おさがしのファイル、ないっすよ(ロードできない)”);
}
//-->
</script>
いまのところ思いついたのはこのくらいです。
ファイルの有/無をJavaScriptでチェックするのは難しそうです。
http://www.microsoft.com/japan/developer/library/jpisdk/dhtml/re...
MSDN Online Japan : File Not Found
なるほど、とても参考になりました。
ファイルの中身を替えることは出来ないのですが、
勉強になりました。
ありがとうございました。
IE限定でよけれはXMLHTTPコンポーネントを利用してファイルの有無をチェックできます。
2回目なのですが、ご要望にかなわなければ申し訳ありません。
<HTML>
<BODY>
<script language=”javascript”>
<!--//
var objHTTP = new ActiveXObject(”Microsoft.XMLHTTP”);
objHTTP.Open(”GET”, ”a.txt”, false);
objHTTP.Send();
//外部ファイルの読み込みがOKかどうかをチェックする
if (objHTTP.status == 200){
document.write(”おさがしのファイル、みつかりやした(ロード完了)”);
}
else{
document.write(”おさがしのファイル、ないっすよ(ロードできない)”);
}
//-->
</script>
</BODY>
</HTML>
ありがとうございます。
ありがとうございます。
やはりできませんか。
SSIの方、検討してみます。
下記は*.jsファイルの読み込みreadyStateを応用してやろうとしたのですが
うまく動作しないようでした。
(特にelseの部分)
<script language=”javascript” type=”text/javascript” id=txtfile src=”./file/a.txt”></script>
<script language=”javascript”></p> <p> <!--//</p> <p> //この関数には、外部JSファイル内に記述した内容を呼び出すために用意しています。</p> <p> </p> <p> //外部ファイルが準備OKかどうかをチェックする</p> <p> if (txtfile.readyState == ”complete”){</p> <p> document.write(”おさがしのファイル、みつかりやした(ロード完了)”);</p> <p> }</p> <p> else{</p> <p> document.write(”おさがしのファイル、ないっすよ(ロードできない)”);</p> <p> }</p> <p> //--></p> <p> </script>