2012-02-15 11 views
1

私はこれを修正できないようです(私が知っていることはかなり簡単です)。正しいURLを渡すことができないチェックボックス付きの簡単なフォームを作成する

私は簡単なタグ検索を作成しています。私のウェブサイト上で会場を検索します。 複数のタグを選択すると、すべてのタグが割り当てられたすべての結果が返されます。だから、僕はそれが働いて取得する(今の、ちょうど2つのオプションで)ホームページ上でのチェックボックスが表示され、私は次のコードを作ってみた

.../placecategory/venue/?place_tags=place+venue 

にURLを変更し、いくつかの簡単なコードが必要

<form 
    action="<?php bloginfo('home') ?>/placecategory/venue/?place_tags=hall+stage" 
     method="get" accept-charset="utf-8"> 
     <h2>Search</h2> 
     <input type="checkbox" value="hall" name="place_tags"> 
     <label for="tag-105">hall</label> 
     <input type="checkbox" value="stage" name="place_tags"> 
     <label for="tag-104">stage</label> 
     <input type="submit" value="Search"> 
</form> 

これに伴う問題は、それが私のサイト上で結果を引き上げていない

.../placecategory/venue/?place_tags=hall&place_tags=stage 

にURLを変更していますです。どうすればを変更して、2番目の&place_tags=(およびそれ以降のすべて)を削除することができますか?

私は何か愚かな行方不明だと言うことができますが、それは本当にイライラしています!事前に

感謝:)

+0

フォームを送信し、POST – frictionlesspulley

+0

としてリクエストを処理するのが理想的です。サーバーサイドスクリプトを修正して、デフォルトで使用する形式のデータを期待してください。さもなければ、あなたはJSに依存してしまい、本当に必要はありません。 (PHPは奇妙ですが、重複した名前を '[]'で終わらせたり、 '$ _GET'を無視して生のURIにアクセスしない限り、すべてのデータにアクセスすることはできません。 )。 – Quentin

答えて

0

あなたはJSでこの値を通して解析し、一度に隠された入力にそれらを置くことができます。

ことは、これを試してみてください:

は、ヘッド部にjQueryライブラリを含める:

<script src="http://code.jquery.com/jquery-latest.min.js"></script> 

そして、本体部

<script type="text/javascript"> 

     function submit_me() { 
       var values = $.map($("input.get-me:checked"),function(input){ 
         return input.value; 
        }); 

       $('#hidden-input').val(values.join('+')); 

       $('#your-form').submit(); 
     }; 

</script> 

     <input class="get-me" id="tag-105" type="checkbox" value="hall" name="one" /> 
     <label for="tag-105">hall</label> 
     <input class="get-me" id="tag-104" type="checkbox" value="stage" name="two" /> 
     <label for="tag-104">stage</label> 
     <img width="50" height="50" src="get.png" onClick="submit_me()" /> 


     <form id="your-form" action="<?php bloginfo('home') ?>/placecategory/venue/" method="get" accept-charset="utf-8"> 
     <input id="hidden-input" type="hidden" value="" name="place_tags" /> 
     </form> 

に=は、 "get-私に" あなたの入力クラスに割り当て、あなたのイメージをimgに入れてください。他のブラウザでのみFFをテストしなければなりません。がんばろう。

+0

あなたの返信をありがとう、私はJavaScript、すべてのヒントと素晴らしいですか?ありがとう – user1212280

+0

私はjQueryでサンプルコードを書いています。 – Radek

1

これはあなたが探しているものですか?

<form action="<?php bloginfo('home') ?>/placecategory/venue" method="get" accept-charset="utf-8"> 
     <h2>Search</h2> 
     <input type="checkbox" value="hall" name="place_tags[]"> 
     <label for="tag-105">hall</label> 
     <input type="checkbox" value="stage" name="place_tags[]"> 
     <label for="tag-104">stage</label> 
     <input type="submit" value="Search"> 
</form> 
+0

申し訳ありませんが、私は非常に明確ではないかもしれませんが、私はチェックボックスに負荷を刻んだりしたくありません。 place_tags = xxx&place_tags = yyy&place_tags = zzz place_tags = xxx + yyy + zzzをロードしたい – user1212280

+0

あなたは簡単に配列としてリクエストを送信できます。そして、PHPを使って配列をループします。投稿としてリクエストを送信します。これが最も簡単な方法です。 – busypeoples

関連する問題