乾燥肌、冬の肌トラブルに本気の対策 >>

テキストボックスに文字列を入力してもらい送信ボタンを押すと、
あらかじめ決まっているURLにその文字列をつないだリンク先に移動する
ということがしたいのですが、

<input name="test" type="text" value="" >
<input type="submit" value="送信" onClick="location.href='決まったURL='">

で飛べません。
「決まったURL」に入力された文字列を指定する方法がわかりません。
どなたか教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんな感じでどうでしょうか?



<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<script type="text/javascript">

function hoge(){
var url = "http://○○○○○○";

if( document.getElementById('text1').value ){
url += "?"+ document.getElementById('text1').value;
}

location.href = url;
}

</script>
<style type="text/css">
</style>
</head>
<body>

<input name="test" type="text" value="" id="text1">
<input type="submit" value="送信" onClick="hoge();">

</body>
</html>
    • good
    • 0
この回答へのお礼

できました!
ありがとうございます。

はじめ<input>タグを<form>で勝手にくくって動きませんでしたが
外して、言われた通りに記述したら動きました。
助かりました。これを機に勉強しようと思います。
ありがとうございました。

お礼日時:2008/12/18 10:10

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

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

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

QURL パラメータを使ってフォームに事前に入力する

いつもお世話になります。

URLに何か細工をして、フォームに事前に入力ができることができたらと思い、
調べているのですが、


下記サイト↓

http://support.google.com/docs/bin/answer.py?hl=ja&answer=160000

に、URL パラメータを使ってフォームに事前に入力する方法が書かれているのですが、
Google ドキュメント専用なのか、うまく行きませんでした。


そもそも、無理なのかもしれないのですが、
もし、URLにパラメータを付け足して、
指定のフォームに事前に入力する方法がありましたら、
お教え頂けないでしょうか?

よろしくお願い致します。

Aベストアンサー

javascriptを使う方法も一案ですが、javascriptを使えない--使わない設定にしていると当然無効です。
 もっとも一般的に使われている方法は、PATH_INFOやQUERY_STRINGS、標準入力(STDN)を使って動的にフォーム自体を出力する方法です。
 URLは、ドメイン名+ファイルへのパス+QUERY_STRINGSの組み合わせですから、それをCGIで解釈すれば簡単ですし、入力チェックなど様々に応用が利きます。サーバーがHTTPで要求を受けるとき、QUERY_STRINGS(?の後ろに続く文字列)を環境変数(QUERY_STRINGS)に格納し、ファイルを探し始めますが、そのファイルが無い場合はPATH_INFOに格納して、その上のディレクトリを探します。そこにも無ければ、さらにそれを探していきます。最終的にファイルが見つかり、かつそれが実行ファイルである場合、入手したQUERY_STRINGS,PATH_INFO,STDNを使用して実行しその結果を返します。---一般的なCGIの動作ですね。
 CGIの最後 __END__ の後に、フォームを置いておきます。書き換える必要があるところには、キーワードを入れておきます。

__END__
<!doctype html>
<head>
<meta charset="utf-8">
<title>フォーム</title>
・・・【中略】・・・
<form action="">
 <input type="text" name="name" value="__USER_NAME__">
・・・【中略】・・・

CGI
print q~content-type:text/html・・・【中略】・・・~;
 while<DATA>{
  s/__USER_NAME__/$userName/;

・・・【中略】・・・

 入力チェック、メールアドレスの整合性、エラー部分の表示や、そもそものリンク元の情報によってフォームの一部を書き換えるなど応用が利くと思います。どのようなデータを受け取ることができるかは・・
Enviroment Variable and FORM,COOKIE ( http://hpcgi1.nifty.com/Iruka/ENV_FORM.cgi/peguule/test.html?name=peguule )
とか

javascriptを使う方法も一案ですが、javascriptを使えない--使わない設定にしていると当然無効です。
 もっとも一般的に使われている方法は、PATH_INFOやQUERY_STRINGS、標準入力(STDN)を使って動的にフォーム自体を出力する方法です。
 URLは、ドメイン名+ファイルへのパス+QUERY_STRINGSの組み合わせですから、それをCGIで解釈すれば簡単ですし、入力チェックなど様々に応用が利きます。サーバーがHTTPで要求を受けるとき、QUERY_STRINGS(?の後ろに続く文字列)を環境変数(QUERY_STRINGS)に格納し、ファイルを...続きを読む

Qテキストボックスに任意のURLを入力で移動するには。

ホームページ上に1つのテキストボックスと1つのボタンを設置して、そのテキストボックスに任意のURLを入力してボタンを押すと新しいウィンドウが開いて、その任意のURLに移動するには、どうしたらいいのでしょうか。宜しくお願いします。

Aベストアンサー

<form>
<input name="url" type="text" value="http://" style=" width:400px; "><br>
<input type="button" value="開く" onclick="window.open(this.form.url.value,'freelink')">
</form>
単純に書けばこのような感じでしょうね。
あとはURLの形式チェックを行うのか?など
もっとこうしたい という希望部分があれば、それを書けばきっとレスが入ります。

Qリンク先を動的に変更する

簡単な仕様を考えて試行錯誤しながら勉強している
ジャバスクリプ超初心者です
どなたか宜しくお願いします

<a href="○○○○○○○○○"><img src="photo01.jpg" width="200" height="150" border="0" id="change" name="change" /></a>
のリンク部分のアドレスを動的に変更したいと思っています

画像とリンク要素両方を「document.write」で書き出し変数を与えてあげれば
出来る事はわかっているのですが

今回は自分の仕様で
どこまでJSでできるものなのか知りたい事もありまして
どうしても指定位置のリンク部分のアドレスだけを変更したいと思っています。

下記方法
document.link[インデックス].hrefで取得できるのですが
この方法だと何番目のリンクかといちいち数えて数字を指定しなきゃいけない為リンク数が多くなった場合には
ちょっと現実的ではありません

そこで例えば指定位置の画像情報を取得するみたいに
「document.ID名.src」みたいに指定箇所の「a」要素の「href」を指定する事はできますでしょうか?
ちなみに同じようにリンクに対してもやってみたのですがダメでした

下記が現在のソースになります。
宜しくお願いします。


=============================================================
JavaScript
=============================================================
function img_chage(no){

img = new Array();
img[0] = "photo01_ov.jpg";
img[1] = "photo02_ov.jpg";

url = new Array();
url[0] = "http://www.google.co.jp";
url[1] = "http://www.goo.ne.jp";

document.change.src = img[no];
document.links[0].href = url[no];

}

=============================================================
HTML
=============================================================
<a href="http://www.yahoo.co.jp"><img src="photo01.jpg" width="200" height="150" border="0" id="change" name="change" /></a>
<br />
<img src="photo01_ov.jpg" width="100" height="75" onMouseOver="img_chage(0)" />
<img src="photo02_ov.jpg" width="100" height="75" onMouseOver="img_chage(1)" />

簡単な仕様を考えて試行錯誤しながら勉強している
ジャバスクリプ超初心者です
どなたか宜しくお願いします

<a href="○○○○○○○○○"><img src="photo01.jpg" width="200" height="150" border="0" id="change" name="change" /></a>
のリンク部分のアドレスを動的に変更したいと思っています

画像とリンク要素両方を「document.write」で書き出し変数を与えてあげれば
出来る事はわかっているのですが

今回は自分の仕様で
どこまでJSでできるものなのか知りたい事もありまして
どうしても指定位置のリ...続きを読む

Aベストアンサー

リンク要素にidなどを振っておけば簡単ですが、ご提示のソースだとそのなかの画像にidがあるのでそれを利用してもいけます。

ごく簡単な例です。(リンクのみ変更。画像は変更してません。)
<html>
<head>
<script type="text/javascript">
function set(n) {
var url = ["http://www.google.co.jp","http://www.goo.ne.jp"];
var img = document.getElementById('change');
img.parentNode.href = url[n];
alert(url[n] + 'に変更しました');
}
</script>
</head>

<body>
<a href="http://www.yahoo.co.jp">
<img src="photo01.jpg" id="change">
</a>
<hr>
<input type="button" value="googleへ変更" onclick="set(0)"> 
<input type="button" value="gooへ変更" onclick="set(1)">
</body>
</html>

リンク要素にidなどを振っておけば簡単ですが、ご提示のソースだとそのなかの画像にidがあるのでそれを利用してもいけます。

ごく簡単な例です。(リンクのみ変更。画像は変更してません。)
<html>
<head>
<script type="text/javascript">
function set(n) {
var url = ["http://www.google.co.jp","http://www.goo.ne.jp"];
var img = document.getElementById('change');
img.parentNode.href = url[n];
alert(url[n] + 'に変更しました');
}
</script>
</head>

<body>
<a href="http://www...続きを読む

Qjavascriptでセレクトボックスの"selected"を動的につ

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
</select>月

<select name='day'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
<option value='13'>13</option>
<option value='14'>14</option>
<option value='15'>15</option>
<option value='16'>16</option>
<option value='17'>17</option>
<option value='18'>18</option>
<option value='19'>19</option>
<option value='20'>20</option>
<option value='21'>21</option>
<option value='22'>22</option>
<option value='23'>23</option>
<option value='24'>24</option>
<option value='25'>25</option>
<option value='26'>26</option>
<option value='27'>27</option>
<option value='28'>28</option>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日


このセレクトボックスに、例えば今日の日付"2010年9月30日"だったら、それぞれの年、月、日の<option>に"selected"をつけたいのですが、javascriptではどのようにして実現したら良いのでしょうか?

よろしくお願いします。

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8...続きを読む

Aベストアンサー

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<option value='2009'>2009</option>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
</select>月

<select name='day'>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日
</div>
</form>

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<opt...続きを読む

QJSで動的にリンクを作成

JSで動的にリンクを作成をしたいのですがわかりません。

例を教えてもらったのですがどう書いていいのかわかりません…。


駄目な例:
<div id="link">
<a href="http://aaa.aa/">aaaa</a>
</div>

いい例
<div id="link"></div>

<script>
document.getElementByID("link")
に対してaddChild
</script>



いろいろ不足していると思いますがお願いします。

Aベストアンサー

たとえばこんな感じ?

<script>
window.onload=function(){
var obj=document.getElementById('link');
var tag=document.createElement('a');
tag.setAttribute('href','http://aaa.aa/');
tag.appendChild(document.createTextNode('aaaa'));
obj.appendChild(tag);
}
</script>
test
<div id="link"></div>
test

QOnClickでURL生成し、飛ばしたい

以下のようにして、ボタンを押した際にGETで画面を遷移させてようとしています。
(ボタンのイメージ画像をクリックすると飛ぶ)

<form method = "get" acion="http://www.test.ne.jp/" target="_next">
<input type ="hidden" name="p1" value="1">
<input type ="image" src="画像URL" onclick="formのsubmitをするメソッド">
</form>

で、当然ながらhttp://www.test.ne.jp/?p1=1に行きます。

今回はここで生成されたURLに飛ばず、違うURLのパラメタにしたいと
考えています。
たとえば、上の例で言えば
http://www.next.ne.jp/?url=http://www.test.ne.jp/
というURLを作って、そっちへ飛ばしたいのです。
(パラメタのほうのURLについてはエンコードしたいです)

さてOnclickで…と考えたものの、URLはボタン押された時に
出来るんで、どうしたものかと悩んでいます。
http://www.test.ne.jp/までは固定なのでいいんですが、
hiddenが動的に増えたり減ったりするので、どうやってパラメタを
作ればいいのか…。
ご教授いただけないでしょうか。

以下のようにして、ボタンを押した際にGETで画面を遷移させてようとしています。
(ボタンのイメージ画像をクリックすると飛ぶ)

<form method = "get" acion="http://www.test.ne.jp/" target="_next">
<input type ="hidden" name="p1" value="1">
<input type ="image" src="画像URL" onclick="formのsubmitをするメソッド">
</form>

で、当然ながらhttp://www.test.ne.jp/?p1=1に行きます。

今回はここで生成されたURLに飛ばず、違うURLのパラメタにしたいと
考えています。
たとえば、上の例で言えば
http...続きを読む

Aベストアンサー

formのsubmitを実行させるのではなく、location.hrefじゃダメなんですか?

もしくはurlを生成後にname="url"に値を設定し、
url以外のnameのhiddenを削除してsubmitとか。
jQueryベースですがこんな感じで。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<script type="text/javascript" src="./jquery-1.8.1.min.js"></script>
<script type="text/javascript">
function jump()
{
if ($("input[name=test]").val() == 1) {
$("input[name=url]").val("abcdefg");
$("input[name=test]").remove();
$("#frm").submit();
}
}
</script>
</head>
<body>
<form id="frm" method="get" action="http://localhost/" />
<input type="button" value="click!" onClick="jump();" />
<input type="hidden" name="url" />
<input type="hidden" name="test" value="1" />
</form>
</body>
</html>


hiddenは動的に増えようが減ろうが、それは動的に作られるはずであるnameや
idを、getElementByName()、getElementById()で存在確認を行えばよいだけでは?


私は何か勘違いしてる気がしますが、解決に向けて、多少の手伝いにでもなれれば・・・。


エンコードはこれで出来ます。
http://jkl.sakura.ne.jp/labs/archives/44

formのsubmitを実行させるのではなく、location.hrefじゃダメなんですか?

もしくはurlを生成後にname="url"に値を設定し、
url以外のnameのhiddenを削除してsubmitとか。
jQueryベースですがこんな感じで。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<script typ...続きを読む

Qlocation.hrefで別窓にリンクを表示させたい

ボタンを作成して、ボタンが押されたらlocation.hrefを利用してリンクに飛ばしているのですが、これを別ウインドウに表示させたいと思っています。別ウィンドウといっても新規に別ウインドウを立ち上げたいのですが、記述方法がわかりません。。。。

ちなみに現在の記述は
<INPUT type="button" value="aaaa" onClick="location.href='hogehoge.html" >

どう修正したらいいのでしょうか?

Aベストアンサー

HEADタグ内に以下を記述
<script language="Javascript">
<!--新しいウィンドウを開く
function newwin(){
var win1=window.open('sample.htm','newwindow',
'toolbar=no,location=no,status=no,menubar=no,scrollbars=no,width=300,height=300');
}
//end--->
</script>

BODYタグ内に以下を記述
<FORM><INPUT type="BUTTON" value="CLICK" onclick="newwin()"></FORM>

参考URL:http://www.wsb.jp/hpb/java_s/window.htm

Q画面間でのJavaScriptでの値の受け渡しについて

お世話になります。

画面(ASPで作成した画面)間でのJavaScript同士の値の受け渡しは出来るのでしょうか。

画面1から画面2を開き、画面2のJavaScriptの関数内で画面1のJavaScriptの値を変えると言った事は出来るのでしょうか。

何方かご存知でしたら、お教え下さい。
宜しくお願い致します。

Aベストアンサー

IEとFireFoxで試してみましたけど、できそうですね。
tes1.htmlからtes2.htmlを開いた場合のソースです。
関数はボタンとかから適当に呼んでください。

// tes1.htmlのJavaScript
var value=0;
function msg () {
alert(value);
}
function openWnd () {
wnd = window.open("tes2.html");
}

// tes2.htmlのJavaScript
function count () {
opener.value++; // openerが親元
alert(opener.value);
}

Qリンクをクリックした時にformからPOST送信したい。

HTML、PHP、JavaScript等でサイトを作っているのですが・・・。

【実現出来ている例】
<form name="form1" method="post" action="Next.php" onSubmit="return InputCheck()">
 <input type="submit" value="送信">
</form>
 submitボタンを一つ置いて、それがクリックされた場合に
formの内容をPOSTで送信する。

【実現したい例】
<form name="form1 method="post">
 <a href="Next.php" onClick="???">???</a>
</form>
 formの中のリンクをクリックされた場合に、formの内容を
POSTで送信したいのですが、その実現方法がわかりません。
GETで送るという手もあり得ますが、今回はどうしてもPOST
したいのですが。

Aベストアンサー

<form name="form1" method="post" action="Next.php">
<a href="#" onClick="document.form1.submit();">???</a>
</form>

onclick内の対象がform1としてあてているので、
アンカータグは別にform内に記述しなくても大丈夫です

form内にhidden等でnameとvalueを持ったパラメータがあればそれも送られます

アンカータグから動的にvalueを変更したい場合は、
document.form1.hogename.value = 'hoge';
等をsubmit()の前に行えば可能です

ただしform内に
<input type="hidden" name="hogename" value="">
を記述する等、変更先パラメータの元を用意する必要がありますのでご注意下さい

Qリンク先のテキストボックスへの値の自動入力

アクティブディスクトップの昨日を使用して、リンク先のページを記載したページを壁紙にして使用しています。
<a href=link.html target=a>リンク<a>
で、開いた先のページのテキストボックスに、値が自動入力された状態でページを開く用にする方法は無いでしょうか?
常に入力の必要のある、ユーザ名等を、リンクボタンを押下することで自動入力したいのです。
よろしくお願いします。

Aベストアンサー

こんな感じでどうでしょう

<script language=javascript>
function fncOpenAndSend(){
var a = window.open('url.asp','_blank');
a.document.GetElementById('x').value = document.GetElementById('y').value;
}
</script>
:
:
<a onclick='if(event.shifyKey != true ) fncOpenAndSend();'>

LocalHostでは十分に動作すると思いますが、readyStateを十分に考慮しないといけないかも。
ザッと書いたので、エラー出るかもしれません。


人気Q&Aランキング

おすすめ情報