プルダウンメニューでセレクトしたら,
その画面がかわったということを知らせて次の動作にうつらせたいので、
reloadさせたいのです。
こういうことは可能でしょうか?

onChangeを利用したらどうかとは思っているのですが・・・
print "[select name=P5 <\"javascript=onChange:location.reload()\">]"
という記述でいいのでしょうか?

よろしくお願いします。

A 回答 (1件)

そもそも上記の記述では、Print文の中身がHTMLとして成り立ってないと思いますが。



正しく書くなら
print "<SELECT NAME=p5 onChange=\"location.reload(true);\">";
ですね。
ただ、単純にReloadさせるだけだと、せっかくSelectで変更した値がreloadによって再び初期化されてしまうので、
○Reloadの前にSELECTの中の値をCookieに保存するなどの処理を組み合わせ、Reload後はCookieから値を取得してFormを初期化する
○一度onChangeでsubmitさせてしまって値をサーバに戻し、その上で再度元のフォームを表示するか、次のフォームへ進むかをCGIで判断する
などの対策を取らないと、おそらく狙った効果は実現できないと思います。
    • good
    • 0
この回答へのお礼

アドバイスまでありがとうございました。
いわれてみれば確かにそうですよね・・・(^O^)
2番目のやり方で再度考え直します。

お礼日時:2001/02/22 16:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q動画の読み込み速度を上げる方法ってありませんか?

現在動画読み込み速度は1秒約100KB(800kbps)です

ファイルやゲームのダウンロードの速度は一秒570~620KB(4.5MB~4.9MB)
プロバイダで契約しているのは5Mbpsです。

なぜ動画の方が遅くなるのでしょうか?
動画がカクカクして見にくいです。(画質を下げろっていう回答はやめてください)
ダウンロード中でもありません。

メモリは8GB
GPUは内臓のでintel HD Graphics3000 を使っています。
CPUはintel corei7 第二世代のを使っています。
OSはwin8.1です。
HDDは750GBあって50GBしかつかってません。

最適化もしました。ブラウザのキャッシュクリアもしました。

Aベストアンサー

驚きの事実 : 相手の送ってくれる以上のモノは受け取れません。

>なぜ動画読み込みのほうが遅いのでしょうか?

動画サイトのサーバーの送り出し速度は1秒約100KB(800kbps)
ファイルサーバーやゲームサーバーの ア ッ プ ロ ー ド の速度は一秒570~620KB(4.5MB~4.9MB)

動画サイトのサーバーの方がそもそも能力が低いか、そのとき混雑していたのでしょう。

自宅--回線--プロバイダ--(インターネット)--各種サーバー
質問者は自分の側の事情しか考えたことないようですが、通信ってのは「相手」の存在するものです。
インターネットの向こう側にあるサーバーの能力・混雑具合はまちまちです。

有料・無料で区別しているところなら、お金払うといいでしょう。

参考URL:https://secure.nicovideo.jp/secure/register?from=header

Qエラーログ「\x8ew\x92\xe8・・・」はどういう意味?

以下のような意味不明のサーバー「エラーログ」が出るのですが、何を意味しているのでしょうか?

スクリプト(フォームの入力値を取得するプログラム)の動作上はなんら問題はないのですが、必ず出るエラーなので、その意味が知りたいのです。

-------------
[Wed --] [error] [client --] \x8ew\x92\xe8\x82\xb3\x82\xea\x82\xbd\x83p\x83X\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8\x82\xdc\x82\xb9\x82\xf1\x81B\r, referer: http://127.0.0.1/fmail.cgi
[Wed --] [error] [client --] \x8ew\x92\xe8\x82\xb3\x82\xea\x82\xbd\x83p\x83X\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8\x82\xdc\x82\xb9\x82\xf1\x81B\r, referer: http://127.0.0.1/fmail.cgi
--------------

ActivePerl-5.6.1.638-MSWin32
Apache/2.0.55(Win32)

以下のような意味不明のサーバー「エラーログ」が出るのですが、何を意味しているのでしょうか?

スクリプト(フォームの入力値を取得するプログラム)の動作上はなんら問題はないのですが、必ず出るエラーなので、その意味が知りたいのです。

-------------
[Wed --] [error] [client --] \x8ew\x92\xe8\x82\xb3\x82\xea\x82\xbd\x83p\x83X\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8\x82\xdc\x82\xb9\x82\xf1\x81B\r, referer: http://127.0.0.1/fmail.cgi
[Wed --] [error] [client --] \x8ew\x92\xe8\x...続きを読む

Aベストアンサー

Shift-JISの生バイト配列が文字になったモノですね。
デコードしてみると、

「指定されたパスが見つかりません」

となりました。
使用しているスクリプト中の、ファイルバスの部分を確認してみてください。
存在しないディレクトリやファイルを指定している部分があるのではないでしょうか。

Qファイル読み込み/書き込み速度を上げるには

下記のようなファイルの読み込み/書き込み処理において、もっと効率よく(速く)読み込み・書き込みをしたい場合どのような工夫をすれば良いでしょうか?

BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("sample2.data"));
BufferedInputStream in = new BufferedInputStream(new FileInputStream("sample1.data"));
int c ;
while((c = in.read()) != -1)
{
out.write(c);
}
in.close();
out.flush();
out.close();

Aベストアンサー

速くなるかどうかは環境によって微妙に違うと思いますが、効率よくやる方法が2つあります。

1. 1バイトづつ読み書きするのではなくて byte[] で1000バイトとかの塊を読んでそのまま塊を書くようにする。(こうすると read, write をする回数が減るので少し速いと思います)。

2. FileInputStream と FileOutputStream のインスタンス双方から getChannel() で java.nio.channels.FileChannel のインスタンスを取り出し、FileOutputStream 側から取り出した FileChannel のインスタンスに対して transferFrom() で FileInputStream 側から取り出した FileChannel のインスタンスを指定する。

例) in は FileInputStream のインスタンス, out が FileOutputStream のインスタンスの場合。

FileChannel fcin = in.getChannel(), fcout = out.getChannel();
fcout.transferFrom(fcin, 0, fcin.size());

速くなるかどうかは環境によって微妙に違うと思いますが、効率よくやる方法が2つあります。

1. 1バイトづつ読み書きするのではなくて byte[] で1000バイトとかの塊を読んでそのまま塊を書くようにする。(こうすると read, write をする回数が減るので少し速いと思います)。

2. FileInputStream と FileOutputStream のインスタンス双方から getChannel() で java.nio.channels.FileChannel のインスタンスを取り出し、FileOutputStream 側から取り出した FileChannel のインスタンスに対して transferFrom()...続きを読む

Q修正画面の「select」で指定のものに「selected」を付ける

CGIを改造中です。
今、修正フォーム部分を色々と触っているのですが、ちょっと知恵を貸してください。
<SELECT>でドロップダウンリストを使っています。
このオプションの数が90くらいあります。
オプションは
<SELECT name="genre">
<OPTION value="11">項目1</OPTION>
~~
と言う形です。
で、修正画面なので、$genreに入っているものに「selected」をつける必要があります。
私の少ない知識だとすべてのオプションに対して、例えば11の場合…
if($genre == 11){
print "<OPTION value="11" selected>項目1</OPTION>\n";
}else{
print "<OPTION value="11">項目1</OPTION>\n";
}
とする方法しか浮かびません。
しかし、これを90個分も並べるのは面倒ですし、ソースも長くなってしまいます。
どうにかしてこれを簡素化することは出来ないでしょうか?
方法があればお願いします。

CGIを改造中です。
今、修正フォーム部分を色々と触っているのですが、ちょっと知恵を貸してください。
<SELECT>でドロップダウンリストを使っています。
このオプションの数が90くらいあります。
オプションは
<SELECT name="genre">
<OPTION value="11">項目1</OPTION>
~~
と言う形です。
で、修正画面なので、$genreに入っているものに「selected」をつける必要があります。
私の少ない知識だとすべてのオプションに対して、例えば11の場合…
if($genre == 11){
print "<OPTION value="11" select...続きを読む

Aベストアンサー

#2です。
ごめんなさい。下のはPHPでした。

perlだと

%xx = (
"11" => "PC - PC販売店"
,"12" => "PC - 中古屋"
,"13" => "PC - その他"
,"21" => "車 - 車販売店"
,"22" => "車 - 中古車販売"
,"23" => "車 - パーツ販売"
,"24" => "車 - その他"
);

と、いうハッシュで。

Qプレステ2の読み込み速度について

SCPH-15000→SCPH-79000(90000)は、SONYによると読み込み速度は変わらないとの返答を得たのですが、読み込み速度が速いという噂も聞きました。実際のところどうなのでしょうか?

Aベストアンサー

そうですね。若干早いような気がしますね。基本的にどんどん高性能になってきていますから、読み込み速度、処理能力などよくなってるはずですよ。

Q正規表現 \s が、\n に、ヒットする。

# 正規表現 \s が、\n に、ヒットする。
#
# Windows XP(sp3) ActivePerl
#
# This is perl 5, version 12, subversion 3 (v5.12.3) built for MSWin32-x86-multi-thread
# (with 9 registered patches, see perl -V for more detail)
#
# Copyright 1987-2010, Larry Wall
#
# Binary build 1204 [294330] provided by ActiveState http://www.ActiveState.com
# Built Feb 9 2011 14:38:22
#
use strict;
use warnings;
use utf8;

my $a = "\n\n";
$a =~ s/\s/aaaaa\n/ig;
print $a;
__END__

[出力結果]
aaaaa
aaaaa

Aベストアンサー

正規表現式で\sは、スペース、タブ、改行のいずれかを意味します。

(参考)
http://www.site-cooler.com/kwl/perl/8.htm#8-2

Qパソコンのドライブを購入したのですが、安いためか最大読み込み速度と書き込み速度がCD-Rで24xと記

パソコンのドライブを購入したのですが、安いためか最大読み込み速度と書き込み速度がCD-Rで24xと記載してありました。しかし、自分は48x対応のCDをパソコンにコピーしたいのです。このドライブに自分が持っているCDを挿入しても非対応なのでしょうか?それとも、読み込み速度が遅いだけで、一応対応するのでしょうか?

Aベストアンサー

>読み込み速度が遅いだけで、一応対応するのでしょうか?

結論は、問題なく対応します。
そもそも
>自分は48x対応のCDをパソコンにコピーしたいのです。

読み込みが48x 対応のCDなんて存在しません。
CDの読み込み速度は、乱暴な言い方をすると無限大で、
使用するドライブによって、x倍速の制限がかかります。
48x 対応などの表示は書き込み速度の表示です。

Qperlスクリプト s/^\s+//;  s/\s+$//;  return wantarray ? @out : $out[0]; について

自作の掲示板を作ろうと思い、perlの勉強をしている者です。人様の作ったスクリプトを解析しています。以下のスクリプトはライブラリに記述されていたものです。


sub tttt {
my @out = @_;
for (@out) {
s/^\s+//;
s/\s+$//;
}
return wantarray ? @out : $out[0];


このスクリプトなんですが、 s/^\s+//; の部分の「+」と s/\s+$//; の部分の「+$」、 また「return wantarray~」 の三つの部分のスクリプトが、どういった働きをしているの分かりません。専門書やウェブ上のリファレンスも色々調べたのですが・・。

分かる方いらっしゃいましたらご教授下さると幸いです。よろしくお願いします。

Aベストアンサー

まず前2つの「+」は,正規表現における,「直前の表現を一回以上繰り返し」をあらわします.
「\s」は空白文字一文字を表す正規表現ですので,「\s+」は,「一文字以上の空白文字」になります.
次に,最初の「^」と2番目の「$」は,その正規表現がどこに現れるかを示す記号です.それぞれ,先頭と最後尾にあることを示します.
したがって,「^\s+」は,「最初に空白が一文字以上ある文字列」に,
「\s+$」は「行末に空白が一文字以上ある文字列」にヒットします.
置換構文sはご存知なんですかね.すなわち,この2文で,行の最初と最後の空白を消しているんです.

次に, wantarray ですが,
http://www2u.biglobe.ne.jp/~MAS/perl/ref/wantarray.html
によると,このサブルーチンttttを呼び出すときに,何を返り値にしているかで真偽が決まる関数です.
呼び出す時に配列を希望していたら @out 全体を,変数を希望していたら $out[0]だけを返します.

Q新旧2台のPCでDVD Decrypterの読み込み速度が違うのはナゼ??

新旧2台のPCがあるのですが…
DVDをDVD Decrypterで読み込まして見ると読み込み速度が3倍ぐらい違います。
しかもスペックが劣る旧型のPCの方が新PCより早いのです。

●旧型 WindowsXP SP2
    Pentium4 3.2G
ドライブ GSA-4163B
DVD-DL 読み込み 2.4X~4X

●新型 WindowsXP SP3
    Quad Q6600 2.4G
ドライブ LH-20A1P
DVD-DL 読み込み 不明

多分、ReadSpeedもLH-20A1Pの方が早いかと…。
DVD Decrypterの設定も両PC共に「デバイス」の「オプション」の読み込み速度を「最大」に設定しています。

こういった環境でDVD-DLを読み込ませると旧型は20分ほどで、
新型は1時間ぐらいかかってしまいます。

これは何故でしょうか??

Aベストアンサー

アプリケーション・プログラム(DVD Decryter)が、

マルチスレッド対応プログラムでないからです。

QperlでLocation

Locationでは#xxxというのは使えないのでしょうか?

#!/usr/local/bin/perl


print "Location:xxx.cgi#xxx/?userID=$name\n\n";
exit;


という風に書いています。
xxx.cgiはローカルにあるcgiでそのcgiの中身は表示できます。

しかしxxx.cgiの中の
<xxxx.cgiの中身>
print <<"EOM";
<html>
.
.
.
<A NAME="xxx>image</A>
.
.
.
</HTML>
EOM
exit;

xxxのところでなく一番最初が表示されてしまいます。
どうすればいいのでしょうか?

Aベストアンサー

フラグメント識別子は最後につけます。
print "Location:xxx.cgi/?userID=$name#xxx\n\n";


人気Q&Aランキング

おすすめ情報