![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
JavaScriptで1page目で指定したパラメータを2page目で別のフォーム内のtextボックスに記入する際、他にも作るテキストボックスと違う文字色にしたいのですが、方法が判りません。そもそもそんなことできないのでしょうか?
------- 1page目 -------
<html>
<head>
<title>別ページのフォームにパラメータを送る</title>
</head>
<body>
<table border="1" cellpadding="5" cellspacing="5" width="80">
<tbody><tr>
<td align="center">
<input type="button" onClick="location.href='form2.html?No.001'" value="セット"></td>
<td align="center">
<input value="閉じる" onClick="window.close()" type="button"> </td>
</tr>
</tbody>
</table>
</body>
</html>
----- 2page目 -----
<html>
<head>
<title>別ページからのパラメータをフォームに書き込む</title>
<script language="JavaScript">
<!--
function pdata()
{
para= location.search;
para = para.substr(1,6);
document.myform.number.value=para;
}
//-->
</script>
</head>
<body onLoad="pdata()">
<table border="1" cellpadding="2" cellspacing="2" width="150">
<tbody>
<form name="myform" method="post">
<TR>
<TD >番 号</TD>
<TD ><input name="number" type="text" id="番号" size="15" /></TD>
</TR>
</form>
</tbody>
</table>
</body>
</html>
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_12.png?e8efa67)
No.3ベストアンサー
- 回答日時:
<html>
<body>
<form action="test1.html" method="post" onSubmit="hoge()">
<p>
<input type="text" id="a" value="abcde"><br>
<input type="text" id="b" value="aiueo"><br>
<input type="submit">
</p>
</form>
<script>
window.onload=function(){
saveCookie('a','',1); saveCookie('b','',1);
}
function hoge(){
saveCookie('a',document.getElementById('a').value,1);
saveCookie('b',document.getElementById('b').value,1);
return true;
}
function saveCookie( vn, v, dy ){ if(navigator.cookieEnabled) document.cookie=vn+'='+escape(v)+ ';expires='+new Date((new Date()).getTime()+dy*86400000).toGMTString();}
</script>
--------------
<html>
<head><style>.col1{color:#f00}</style></head>
<body>
<form submit="test1.html" onSubmit="hoge()">
<p>
<input type="text" id="a" value="abcde"><br>
<input type="text" id="b" value="aiueo"><br>
<input type="submit">
</p>
</form>
<script>
window.onload=function(){
var v;
document.getElementById('a').className=(v=loadCookie('a'))?'col1':''; document.getElementById('a').value= v;
document.getElementById('b').className=(v=loadCookie('b'))?'col1':''; document.getElementById('b').value= v;
}
function saveCookie( vn, v, dy ){ if(navigator.cookieEnabled) document.cookie=vn+'='+escape(v)+ ';expires='+new Date((new Date()).getTime()+dy*86400000).toGMTString();}
function loadCookie(vn){ var r = '',o = document.cookie.split('; '); for (var i in o){ var c = o[i].split('='); if (c[0]==vn && c[1]!=''){ r = c[1]?unescape(c[1]):'';break; }} return r;}
</script>
_pipi_さん
回答有難うございました。
難しいスクリププトをいただきました。これから解読させていただきます。とりあえずお礼まで。
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_12.png?e8efa67)
No.4
- 回答日時:
受け渡しにはクッキーを使ってます
saveCookie(vn,v,dy)のvnは変数の名前、vは変数の値、dyが保存期間
loadCokkie(vn)で変数の名前の値を読み出します
もし渡されたデータがnull以外だったら赤色に変える
if(para=='') document.getElementById('a').style.color='#f00';
サンプルは、データの受け渡しがあれば、スタイルシートで
classNameをcol1(赤)にしてます。
あと自分のミス発見
2つめのHTMLでフォームの
<form submit="test1.html" onSubmit="hoge()">
のsubmit="test1.html"は意味がありません
なくして、idでもふってください
_pipi_さん
No.4の補足説明有難うございました。クッキーでお受け渡し方法参考になりました。有効期限付きでの受け渡し方法までできることがわかり大変参考になりました。
渡されたデータの内容で色変えをする条件文なども大凡理解できました。もう少し自分の中で、理解を深め自分の応用例に組み込んで見たいと思っています。有難うございました。
フォーム内で、単純に特定のテキスト欄などの文字フォント、色、背景色などはstyleでHTMLでも処理できるのでそちらの方法とも組み合わせて行こうと考えています。
No.2
- 回答日時:
javascirptでパラメータの受け渡しをするのであれば、
(1)getでlocation.searchをつかう
(2)hash値をつかう
(3)クッキーをつかう
などあると思いますが、どれも中途半端。
やはりデータの受け渡しにはgetやpostをつかったサーバーサイドの
プログラムを利用するのが賢明です
yambejpさん、
回答にお礼を申し上げます。
質問にも書かせていただきましたが、パラメータの引渡しについては、URL上に丸見えになりますが、この方法で引き渡すことで問題意識は持っていません。これでOKと思っています。質問のポイントはこの引き渡された「?=no.001」から「no.001」を抽出してフォームのテキスト内に指定した色で書き込む方法が考えつかなくてお知恵を駆りたくて質問したのです。例示したスクリプトで黒色であればテキスト欄内に「no.001」は書き込まれているかと思います。この色を黒でなく指定した色にしたいのです。他のテキスト欄は黒色でよく、パラメータとして引き渡されたものだけを識別できるように色を変えたいのです。お分かりいただけますでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptのちょっとした動作...
-
tabindexの取得
-
JSPでonChangeを強制発行するに...
-
カーソルが当たった箇所に吹き...
-
開いたサブウインドウから値を...
-
SHIFT + TABキーの...
-
ロストフォーカスしたフォーム...
-
フォームのPOSTデータをサブウ...
-
サブウィンドウに変数を渡す方...
-
input要素のtype属性を変えたい
-
テキストボックスの背景色について
-
return trueとreturn falseの用...
-
cookie使用時にundefinedと表示...
-
【jQuery】input nameの文字列...
-
value内に変数を入れたい
-
javaScriptの変数をJavaの変数...
-
別ウィンドウへのsubmitの挙動...
-
JavaScriptで特定のtdタグにcla...
-
クリアボタンの動作について
-
CSVファイルを読みこみ、プルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
tabindexの取得
-
TextBoxに半角数字以外を入れた...
-
HTMLファイル同士での値渡し
-
プルダウンで選択された値を別...
-
VBscriptの配列変数をJavascrip...
-
どちらかひとつのテキストボッ...
-
テキストボックスに入力した色...
-
フォームの内容でリンク先URLの...
-
GetElementByIdがうまく取得で...
-
ページ間で変数を保持したい
-
javascriptのちょっとした動作...
-
フォームのPOSTデータをサブウ...
-
jQueryのdatepickerの日付が選...
-
テキストエリアに履歴を残したい
-
VBSからjavascript
-
JSPでonChangeを強制発行するに...
-
画面表示時の初期フォーカスの...
-
JavaScriptの値を、cgiに渡す方...
-
開いたサブウインドウから値を...
-
マイナスなら赤字で表示したい...
おすすめ情報