1

サーバーによって生成された URL があります。クライアントにいるので、URL が :http://url/parameterまたはhttp://url/parameter?anotherPar=1.

この値は、j​​avascript 変数で使用できます。

  var theUrl = '{someURLgeneratedByTheServer}';

いくつかのパラメーターを渡すことを使用したいのですwindow.location.hrefが、それを行うことはできません:

  window.location.href = theUrl + '?someClientGeneratedParameter=value&secondParameter=value2';

サーバーによって生成された URL にクエリ文字列パラメーターが既に含まれている場合、これは無効になります。jQuery の Ajax メソッドを使用している場合、options パラメーターを使用してデータ オブジェクトに必要なクエリ文字列パラメーターを渡すことができ、jQuery 自体が ? と連結する必要があるかどうかを判断できることを知っています。または &、次のように:

   $.ajax({
            type: "GET",
            url: theUrl,
            data: {someClientGeneratedParameter:'value', secondParameter:'value2'},
            success: callback 
        });

を呼び出す前に、jquery のこの concat メカニズムを使用してリダイレクトを行う方法はありlocation.hrefますか? (以下のようなもの):

//supposition only, when  theUrl equals 'http://url/parameter?anotherPar=1'
var finalUrl = $.getMyFinalUrl({url: theUrl,
                 data: {someClientGeneratedParameter:'value', secondParameter:'value2'}
                });
window.location.href = finalUrl ;

それは理にかなっていますか、それとも独自のメソッドを作成する必要がありますか?

ありがとう。

PS: サーバー + C# で Asp.net MVC3 を使用します。

4

2 に答える 2