$H()関数 [prototype.js]
$H()関数は、引数に渡されたオブジェクトをHash(ハッシュ)オブジェクトに変換します。
$H()関数で処理されたハッシュオブジェクトは、キーと値で組み合わされたハッシュ構造のデータを格納しています。ハッシュオブジェクトには、keys()(キーを配列として返す), values()(値を配列として返す), merge(hash)(ハッシュをマージする), toQueryString()(クエリーパラメータ形式に変換),inspect()(ハッシュの内容を表示可能な文字列に変換)などのメソッドがあります。toQueryString()は、使えそうなメソッドなので以下で例を示します。
[サンプル]
formの2つのデータをハッシュ構造のデータに変換して、toQueryStringメソッドでクエリーパラメータ形式に変換する。toQueryStringでは、URLエンコードもするので、そのままGETパラメータとして利用可能です。
HTML
<form> d1:<input id="d1" type="text" /><br /> d2:<input id="d2" type="text" /><br /> <input id="btn" type="button" value="Check" onclick="getData()"/> </form>
JavaScript
function getData() { var data = {d1:$F('d1'), d2:$F('d2')} var query = $H(data).toQueryString(); alert("toQueryString後:" +query); }