2011-03-22 11 views
2

検索クエリのURLエンコーディングに問題があります。これはVelocityテンプレートにあります。Velocityでの検索のURLをHTML形式でエンコードしていません

<form method="GET" action="$req.contextPath/plugins/peopledirectory/search.action"> 
    <div class="greyboxfill" style="width: 420px"> 
     <input type="hidden" name="pageId" value="$pageId"/> 
     <input type="text" name="search" id="search" size="30" value="$search"/> 
     <input type="submit" name="searchbtn" value="Pesquisar"> 
    </div> 
</form> 

問題は、私は、送信ボタンをクリックすると、検索文字列をURLエンコードされていないことであると私はME & Aのようなものを探している場合、それは私だけを検索します。その仕事をするためにVelocityに必要な定義はありますか?

フォームのHTMLタグに内部URLエンコーディングがあることがWebでわかりましたが、なぜこの場合は機能しませんか?

+0

これは見ていません。ブラウザーのURLフィールドにエンコードされたデータが表示されますか?私はあなたのフォームが英語ではないことを知っています、多分あなたはそれを認識できないように別のエンコーディングの '&'文字を入力しますか? – serg

答えて

1

EscapeToolVelocityToolsから明示的にエスケープすることです。これは、ダウンロードしてあなたのベロシティコンテキストに含める必要がある追加のライブラリです。

URLエンコーディングとして簡単のようにある:速度とは何かを持っているよう

$escape.url($search) 
関連する問題