Htmlヘルパーのurlメソッドで生成したURL文字列に対して、jQueryの非同期通信を行ったら、うまくクエリーパラメーターが渡りませんでした。

調べてみると、JavaScriptに出力されている文字列は下記になってました。

'/[コントローラー名]/[アクション名]?[パラメーター01]=[値]&[パラメーター02]=[値]'

おそらく、セパレーターの「&」が「&」となっているからうまく処理できていないようです。ちなみに、URLの生成部分は下記です。

echo $this->Html->url(
 array(
  'controller' => [コントローラー名],
  'action' => [アクション名],
  '?' => array(
   [パラメーター01] => [値],
   [パラメーター02] => [値]
  )
 )
);

いい解決方法はないものかと調べていたら、下記で解決しました。

echo Router::url(
 array(
  'controller' => [コントローラー名],
  'action' => [アクション名],
  '?' => array(
   [パラメーター01] => [値],
   [パラメーター02] => [値]
  )
 )
);