1

ここSOで同様のタイトルの質問を調べましたが、同じ問題を抱えている人をまだ見つけていません。jQuery を使用して、パラメーター全体を指定せずに ajax リクエストを作成しようとしていurlます。たとえば、私がページにwww.foo.com/barいて、 ajax リクエストを に送信したい場合、リクエストが発生するパラメータを にwww.foo.com/bar/woot設定するだけで、いいですね。url/bar/wootwww.foo.com/bar/woot

ただし、これは、そのページbarがサイトのルートにある場合に機能します。私の場合、私はページwww.foo.com/users/1にいて (複数のユーザーを持つ RoR アプリケーションを開発しています)、 にリクエストを送信したいと考えていますwww.foo.com/users/1/barurlパラメータをbar/ルートから開始する前に)に設定するだけでうまくいくと思いました。urlパラメーターをに設定するbarと、ajax 要求が行われましたwww.foo.com/users/bar(明らかに、と の間に/1/挟まれることを望んでいたユーザー ID は省略されています)。usersbar

また、ruby-on-rails タグで検索しましたが、これが RoR 固有の問題であることは何もわかりませんでした。ユーザーIDを関数に渡し、それをURLに挿入するだけで、この問題を回避できることは明らかです。

私にとって奇妙なことは、リクエストの一部ではないフラグメント/1/のようなものではなく、間違いなく URL の一部であることです (私が間違っていなければ) 。#1

UPDATE呼び出しに現在のURLが含まれるように引数を
変更するなど、jQueryで必要なことを達成する簡単な方法がありますが、引数を指定するだけでは含まれない理由についての説明があるかどうか疑問に思っていましたajax リクエストで使用される、構築された URLのurlwindow.location.href()+"/bar".href()/1/barurl/1/

何か案は?前もって感謝します!

4

1 に答える 1

0

これは機能します。

var current_href = window.location.href()
window.location.replace(current_href + '/bar')

これにより、URLがロードされますwww.foo.com/users/1/bar

于 2013-03-19T12:13:43.443 に答える