2017-07-11 9 views
-1

HTML5モードを使用せずに、URLからIDを取得してフォームを生成する必要があります。AngularJS getパス値

私のURLは、私はURLのid = 19 /?#を使用したくないhttp://mydomain/public/keep-me-informed?id=19

になります。サーバー側の では、idパラメータを取得してページをレンダリングして特定の操作を行います。ページが読み込まれるときに、私はIDを取得し、フォームを生成するためにいくつかのサービスを呼び出す必要があります。

ルーティングはありません。 $ location.search()は、#またはHTML 5モードでのみ動作します。

私も自分のコントローラに値19を取得するためのクリーンな方法だろう何今http://mydomain/public/keep-me-informed/19

のようなURLを持つことができます。

+0

である、パラメータ名でID値を取得することができ、あなたがやっていることの適切な情報やコードサンプルを提供してください。コントローラ内の –

+1

: 'window.location.href'で現在のURLを取得し、lastindexof( '/')と部分文字列メソッドからURLを取得します。 – hadi

+0

@ArjunNayakこの質問にはコードサンプルは必要ないと思いました。私が何を試したのか説明したので、コードサンプルで多くの同様のポストから解決策を探してみましたが、それらはすべて私のために失敗しましたが、他の人に示唆されているように、javascriptだけが解決策です。 – Mukun

答えて

0

これを使用してください。

あなたはid

function getParameterByName(name, url) { 
    if (!url) url = window.location.href; 
    name = name.replace(/[\[\]]/g, "\\$&"); 
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 
     results = regex.exec(url); 
    if (!results) return null; 
    if (!results[2]) return ''; 
    return decodeURIComponent(results[2].replace(/\+/g, " ")); 
} 

var id = getParameterByName('id');