□ masa [2005年11月19日03時33分]フレーム内に設置しているのですが、管理モードから入室して登録者[全選択]、あるいは、個別に選択してもエラーが出ます。フレーム外だと正常に動き(送信できます)ます。なぜでしょう?また、フレーム内で利用したいのですが・・・以上 □ NXer [2005年11月19日21時22分]>なぜすえぽんさんのcgiの特徴をごぞんじでしょうか。NXerです。それは、cgiとjavascriptの複合(ふくごう・ハイブリッド)なスクリプトです。ウェブページは、HTMLのタグで記述しますが、さらにcgiで書込み、メールの送信などが可能になります。javascriptを使えば、同じことをウェブブラウザ上ですることができます。次の構造を持つフレームについてはHTMLでは、下のように管理しています。ーーーーーーーーーー| above ||ーーーーーーーー| |left |right* |ーーーーーーーーーー*はmagazinegerへのリンクの設置フレーム。<FRAMESET rows="50%,50%"><FRAME name="above" src="magindexabove.html"><FRAMESET cols="50%,50%"><FRAME name="left" src="magright.html"><FRAME name="right" src="magindexleft.html"></FRAMESET>右下フレームのリンク用文字とリンクです。<A href="http://127.0.0.1/~user/magazinegerZ/magazine.cgi" target="right">magazineger リンク</A>フレームの指定は、target属性でその値を、フレーム名rightにしています。リンクするとここにmagazinegerが表示されます。まだ、html言語の管理下にあります。しかし、一旦magazineger.cgiが起動すると、フレーム管理はcgiスクリプトに渡されます。そして、なぜ、という疑問文の答えはjavascriptのフレーム指定に隠されています。ある意味では、ある階層で送信者を指定しているために、cgiが、別の階層で送信しようとしても、未指定になりエラーとなります。>フレーム外だとフレーム外とは、全画面状態の初期状態ですから、常にすえぽんさんのcgiは正しく動作します。これも、フレームの二つの言語・HTMLとjavascriptのフレーム管理の違いを考えると、よく分かると思います。>フレーム内で利用-----------------------jsのparentプロパティの形式parent.frameオブジェクト名-----------------------parentはウェブぺージ全体です。当方のHP作成ソフトでためしたところ、送信者の指定をしているのにエラーがでました。そのことから次のすべての■ parent.list. を□ parent.right.list.と変更します。置換機能で一括変更ができます。379 function select_all(p) {380 max = parent.right.list.document.forms[0].to.length;(中略)408 function send() {409 to_val = '';410 max = parent.right.list.document.forms[0].to.length;以下略420フレームは、ウェブサイトの構築を考えるとフレームでダイナミックなサイトになり、上のjapascriptで、左右のページの入れ替えとか、華やかな、クールなサイトに仕上げることができます。しかし、検索の時にリンク元が分からなくなることから、資料的な価値が著しく下がります。真に情報を求める人に、ささやかでも、価値あるページがフレームのために到達できないことは、フレームの致命的な問題と愚考します。matazinegerは、幸い、資料提供型のcgiではありませんから、思う存分にフレームを使いこなしてください(勝手な願望)。 一定時間書込が無かったので過去ログに移りました
フレーム内に設置しているのですが、管理モードから入室して登録者[全選択]、あるいは、個別に選択してもエラーが出ます。フレーム外だと正常に動き(送信できます)ます。なぜでしょう?また、フレーム内で利用したいのですが・・・以上
>なぜすえぽんさんのcgiの特徴をごぞんじでしょうか。NXerです。それは、cgiとjavascriptの複合(ふくごう・ハイブリッド)なスクリプトです。ウェブページは、HTMLのタグで記述しますが、さらにcgiで書込み、メールの送信などが可能になります。javascriptを使えば、同じことをウェブブラウザ上ですることができます。次の構造を持つフレームについてはHTMLでは、下のように管理しています。ーーーーーーーーーー| above ||ーーーーーーーー| |left |right* |ーーーーーーーーーー*はmagazinegerへのリンクの設置フレーム。<FRAMESET rows="50%,50%"><FRAME name="above" src="magindexabove.html"><FRAMESET cols="50%,50%"><FRAME name="left" src="magright.html"><FRAME name="right" src="magindexleft.html"></FRAMESET>右下フレームのリンク用文字とリンクです。<A href="http://127.0.0.1/~user/magazinegerZ/magazine.cgi" target="right">magazineger リンク</A>フレームの指定は、target属性でその値を、フレーム名rightにしています。リンクするとここにmagazinegerが表示されます。まだ、html言語の管理下にあります。しかし、一旦magazineger.cgiが起動すると、フレーム管理はcgiスクリプトに渡されます。そして、なぜ、という疑問文の答えはjavascriptのフレーム指定に隠されています。ある意味では、ある階層で送信者を指定しているために、cgiが、別の階層で送信しようとしても、未指定になりエラーとなります。>フレーム外だとフレーム外とは、全画面状態の初期状態ですから、常にすえぽんさんのcgiは正しく動作します。これも、フレームの二つの言語・HTMLとjavascriptのフレーム管理の違いを考えると、よく分かると思います。>フレーム内で利用-----------------------jsのparentプロパティの形式parent.frameオブジェクト名-----------------------parentはウェブぺージ全体です。当方のHP作成ソフトでためしたところ、送信者の指定をしているのにエラーがでました。そのことから次のすべての■ parent.list. を□ parent.right.list.と変更します。置換機能で一括変更ができます。379 function select_all(p) {380 max = parent.right.list.document.forms[0].to.length;(中略)408 function send() {409 to_val = '';410 max = parent.right.list.document.forms[0].to.length;以下略420フレームは、ウェブサイトの構築を考えるとフレームでダイナミックなサイトになり、上のjapascriptで、左右のページの入れ替えとか、華やかな、クールなサイトに仕上げることができます。しかし、検索の時にリンク元が分からなくなることから、資料的な価値が著しく下がります。真に情報を求める人に、ささやかでも、価値あるページがフレームのために到達できないことは、フレームの致命的な問題と愚考します。matazinegerは、幸い、資料提供型のcgiではありませんから、思う存分にフレームを使いこなしてください(勝手な願望)。