こんにちは。
ひとつのテキストエリアから、ボタンの違いによって送り先を変更することは可能なのでしょうか?
具体的にやりたいことは、「検索デスク」と言うサイトのように、入力フォームは同一でもボタンの違いによって送り先が変わっています。
やりたいことは「検索デスク」さんと同一なのですが、ソースを拝見しても良くわかりませんでした。
大手のサーチエンジンの検索窓を羅列することはできるのですが、もう少しスマートにしたいです。(^^ゞ
わたしのスキルは質問ID195803のとおり、JavaScriptを良く理解していないようです。
よろしくおねがいします。<(__)>
No.2ベストアンサー
- 回答日時:
検索に必要なフォームの内容は、検索サイトごとに異なります。
ですので、検索サイトごとにフォームを用意して、押されたボタンによって使うフォームを切り替えるとよいでしょう。
必要なフォームの内容は、検索サイトごとに用意されていますので、それを利用します。(参考URLを参照)
ただし、そのままでは検索窓などが表示されてしまうので、type を hidden にして下さい。(スタイルシートの display:none を使うと、NNで動作しないようです。)
下記に、IE5.5 / NN4.7 / NN6.2 動作確認済みのソースを記載します。
■HEAD内
<SCRIPT language="JavaScript"><!--
function search(btn) {
with (window.document) {
forms[btn.name][ forms[btn.name].alias.value ].value = btn.form.word.value;
forms[btn.name].submit();
}
}
//--></SCRIPT>
■BODY内
<!-- 共通入力フォーム -->
<FORM>
<INPUT type="text" name="word">
<INPUT type="button" name="google" value="Google 検索" onClick="search(this)">
<INPUT type="button" name="yahoo" value="Yahoo! 検索" onClick="search(this)">
</FORM>
<!-- Google フォーム -->
<FORM name="google" action="http://www.google.com/search" target="_blank">
<INPUT type="hidden" name="alias" value="q">
<INPUT type="hidden" name="q" value="">
<INPUT type="hidden" name="hl" value="ja">
</FORM>
<!-- Yahoo! フォーム -->
<FORM name="yahoo" action="http://search.yahoo.co.jp/bin/search" target="_blank">
<INPUT type="hidden" name="alias" value="p">
<INPUT type="hidden" NAME="p" value="">
</FORM>
# 各検索サイト用フォーム内にある alias という名の hidden オブジェクトは、スクリプトを簡単にするための工夫です。
# 検索サイトを追加する時は、検索ボタンの name と、サイト用 FORM の name を、同じ名前にして下さい。
参考URL:http://www.google.co.jp/intl/ja/searchcode.html, …
この回答への補足
ありがとうございます(T_T)
感動のあまり涙が出そうです。(笑)
サンプルをそのまま使用させていただいたところ、まさに求めていたものが再現できそうです。
コレを元に他の検索エンジンも自分で加えてみたいと思います。
この事で色々検索していたのですが見つけることが出来ず、困っておりましたのでとても助かりました。
解決しましたが、実際に作成してみますので1日ほど、質問は締め切らずにおきます。
重ねて、ありがとうございました。
No.1
- 回答日時:
<HTML>
<HEAD>
<Script Language="JavaScript">
function form_submit2()
{
document.submit_form.action = "test2.html";
document.submit_form.submit();
}
</Script>
</HEAD>
<BODY>
<form action = "test1.html" method = "post" name = "submit_form">
<input type = "text" name = "hoge"><br>
<!-- test1 へ遷移 -->
<input type = submit><br>
<!-- test2 へ遷移 -->
<input type = button onClick="form_submit2()"><br>
</form>
</BODY>
</HTML>
こんな感じでしょうか?
内容としては下のボタンを押下したときにJavaScriptのform_submit2という関数を呼び出します。
その関数の中身でFormのSubmit先を変更してその後に強制的にSubmitさせます。
この回答への補足
早速の回答ありがとうございます。
送り先のサーチエンジンに入力キーワードを検索させたいのですが、Submitさせるだけで可能でしょうか?
ちょっと試してみましたが、できませんでした。
(test.htmlをhttp://www.google.com/searchに変更してみました)
私の理解が間違っているのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 検索窓とcssハックについて 3 2022/04/22 12:21
- メルカリ メルカリで、僕がゆうゆうメルカリ便で出品してたものを 1 2022/06/03 20:51
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Google Maps iPhoneのGoogle検索窓を通常の大きさに 戻す方法を教えて頂けませんか?(切実) 日本全国の 2 2022/10/02 02:08
- メルカリ メルカリで、僕がゆうゆうメルカリ便(匿名配送)で出品したものを 3 2022/06/03 09:58
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VBA チェックボックスの設定について 1 2022/10/24 10:27
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- Yahoo!メール yahooメールの検索結果を全て表示するには? 1 2023/05/16 14:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラムについて。
-
スマホ上で、左右スワイプで次...
-
初心者です。gulpでコンパイル...
-
プログラムがうまく動きません...
-
jsで質問です。 displayプロパ...
-
【Google Apps Script】「ライ...
-
console.logがどうしても2つ機...
-
指定時間になったら、WEBサイト...
-
Googleフォームで選択肢に応じ...
-
セレクトを全て選択されていな...
-
イラストレーター、縦中横のシ...
-
sessionStorageを調べています。
-
コードレビューをお願いします。
-
セレクトボックスで配列を呼び...
-
jsで、配列内の文章を改行する...
-
jQueryで同じクラス名のものを...
-
HTMLタグに複数のクラスを設定...
-
コードレビューをお願いします。
-
IndexedDB を使ってファイルア...
-
画面遷移を行わずに同一ページ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
var exports = exports || {}; ...
-
HTMLタグに複数のクラスを設定...
-
jsで質問です。 displayプロパ...
-
画面遷移を行わずに同一ページ...
-
Googleフォームで選択肢に応じ...
-
特定の文字列を複数抜き出した...
-
フロントエンドフレームワーク...
-
変数名をどのようにつけるのが...
-
【JS】selectでchangeした時の...
-
React hooksが値を返して配列変...
-
オブジェクトから任意のプロパ...
-
指定時間になったら、WEBサイト...
-
Colorboxがうまく設置できません
-
二次元配列の中の各行の要素を...
-
読み込んだQRコードをフォーム...
-
IndexedDB を使ってファイルア...
-
HTMLで作った時報アプリが動き...
-
GASに文字列として関数を入れる...
-
GASでGoogleフォームの自動返信...
-
①入力フォーム→②確認表示画面→③...
おすすめ情報