2017-06-02 4 views
1

URLにバインドせずに、あるページから別のページにパラメータを送信する方法はありますか。ほとんどの場合、次のページで値を取得するためにURLに値を送信します。 AngularJsのように:URLを送信せずにあるページから別のページにパラメータを送信する方法はありますか?

JavascriptまたはJqueryでは、このようにしています。

<li><a href='Product/ProductList/" + this.Id + "'>" + this.Name + </a> </li> 

URLにパラメータを送信しないでください。事前に感謝:)

+0

ローカルストレージにパラメータを設定し、別のページにパラメータを設定できます。 –

+0

あなたのタグの1つがasp.net-mvcであることがわかりました。なぜ彼らをビューバックに入れないのですか? –

+1

あなたはローカルのstorgeまたは定数を選択することができます –

答えて

0

それはいくつかの方法で行うことができ、localStorageはそれを行う一般的な方法です。

例:コントローラAでは、あなたはどこにでも外部コントローラBまたはInのlocalStorage

$scope.age = 50; 
localStorage.setItem('age', $scope.age); 

を使用して名前に変数の値を設定することができ、あなたはのgetItemを使用してフェッチすることができます。

var age = localStorage.getItem('age'); 
1

あなたがui-routerを使用している場合は、状態のParamsプロパティを使用してこれを行うことができます。あなたは状態に遷移しているとき、あなたはmyParamあなたが望む任意の値を割り当てることができますし、その後、$stateParamsを介してアクセスすることができるようになります

$stateProvider.state('state.name', { 
    url: "/state-url", 
    params: { 
     myParam: null 
    } 
}); 

。ビューで

使用

<a ui-sref="state.name({ myParam: 'Value of the param' })">Link Text</a> 

使い方コントローラ

$state.go('state.name', { 
    myParam: 'Value of the param' 
}); 

彼らは単にメモリに格納されているためだけで、ページのリロードの後に​​、それらのパラメータが空になることに注意してください。

関連する問題