2011-07-05 12 views
2

URLからパラメータ名を削除しただけで別のページに文字列を送信するフォームを作成しようとしています。 "foo" というフォームを文字列に送信する(jquery?)

<form action="search.asp" method="get"> 
    <input type="text" name="keyword" id="keyword"> 
    <input type="submit" value="Go"> 
</form> 

search.asp?fooに行くわけではありませんsearch.asp?keyword=foo

と、次のフォームを提出

すなわち、これは純粋なHTMLで行うことができますか?
これはjavascriptやjqueryで行うことができますが、私は正確な方法はわかりません。

誰でも手伝いできますか?

私はちょっとしたことがありますので、コピー&ペーストのソリューションは私にとって素晴らしいものです。

更新: これまでの回答に感謝しますが、動作していないようです。これを行うより良い方法は、JQueryにURLを構築してそのURLをロードさせることです。それ以上の提案は素晴らしいでしょう。

<form action="search.asp?foo"> 
+0

お送りいただく方法は?またはそれを受け取る方法?または両方?なぜあなたはこれをしたいと思いますか? – AndyL

+0

ターゲットページはそれをうまく受信できます。残念ながら私はいくつかの古いコード(このプロジェクトへの私のアポイントメント前)に悩まされていて、そのページの機能を、サイト全体のどこからでも簡単なテキストフィールドからアクセスできるように拡張したいと考えています。私は、他の機能にリンクされた古いものを書き直し、それを破る危険を冒すよりも、このようにする方が早いと思った。 – RickyD

答えて

0

はこれを試してみてください?

$('input[type="text"]').blur(function() { 
    $('form').attr('action', 'search.asp?' + $('input').val()); 
}); 
0

または多分...:

0

便宜上、フォームと送信ボタンにクラス名を付けて、ページにjQueryがあるものとします。

<form action="search.asp" method="get" class="search_form"> 
    <input type="text" name="keyword" id="keyword"> 
    <input type="submit" value="Go" class="search_button"> 
</form> 

<script type="text/javascript"> 
    $(function(){ 
    var $form = $(".search_form"); 
    // save the default action, because we are going to mess with it. 
    $form.data("original-action", $form.attr("action")); 
    // listen to the click on the button, update the form action and submit the form manually 
    $(".search_button").click(function(){ 
     $form.attr("action", $form.data("original-action") + "?" + $("#keyword").val()); 
     $form.submit(); 
     return false; 
    }); 
    }); 
</script> 

テストされていませんが、動作するはずです。お知らせ下さい。

Btw、デフォルトのアクションを保存する必要はない可能性があります。ただし、ページをリロードせずにajaxで送信したい場合に備えてください。

0
<script> 
$(document).ready(function(){ 
    $("#btnSubmit").click(function(){ 
     var keywordVal = $("#keyword").val(); 
     window.location.href = "search.asp?" + keywordVal;   
    }); 
}); 
</script> 

<input id="keyword" type="text" name="keyword"> 
<button id="btnSubmit">Submit</button> 
関連する問題