2016-05-31 32 views
1

利点があるので、すべてのことが従来のaspxから剃刀のビューに変換されているので、 私の質問は、私たちが許可されたパネルと同様のものを達成する方法ですXが真であれば、パネルelse = visibleを表示します。asp.netの代わりにasp.netの代わりにmvc

私たちはMVCでも同様のことを達成できますか? Matteo1010が言ったように

@if(condition) { 
    <div>............ </div> 
} 
+2

'@if(X){//レンダリングするhtml}' –

+0

''パネル 'は一度レンダリングされますか? 'div'だけではありません。私の最初の試みは "mvcでdivを表示/隠す方法"です。私はそうし、これを見つけたhttp://stackoverflow.com/questions/17595165/how-to-show-and-hide-div-using-c-sharp-in-mvc-2-aspx – niksofteng

+0

@StephenMuecke \t 特定のdivを表示するために他のものを使用している場合は、aspxとrazorの違いは何ですか?razorはコードの背後から自由であるためですか? – sam

答えて

5

あなたは、ビュー内のかみそりでそれを行うことができます渡された値とHTMLヘルパーだけでセットアップビューに:

<script type="text/javascript"> 
var condition = '@[passed condition value here]'; 

if (condition) { 
    // show panel 
    document.getElementById("yourdivid").style.visibility = "visible"; 
} 
else { 
    // hide panel 
    document.getElementById("yourdivid").style.visibility = "hidden"; 
} 
</script> 
<div id="yourdivid"></div> 

私は渡された値とJSのアプローチは、ビュー内で直接C#のコードを書くよりも、クライアント側でビューの動作を制御するために、より多くの利点を持っていると思います。

0

パネルが直接ビュー上のいずれかのプロセス条件ようにすることができます、実際にMVCのビューで<div id="yourdivid">...</div>要素であり、または必要に応じJSを使用します。

関連する問題