2017-04-08 6 views
0

私はhtmlを格納している文字列を持っています。コードビハインドからhtml属性を隠す

string receipt = "<html> 
<head></head> 
<body> 
<table style="width: 100%"> 
    <tr id="trInsuranceInfo" style="line-height: normal;"> 
    </tr> 
    <tr id="trCorpInfo" style="line-height: normal;"> 
    </tr> 
    <tr id="trInvoiceDetails" style="line-height: normal;"> 
    </tr> 
</table> 
</body> 
</html> 
" 

私は特定の条件の背後にあるコードからTR trInvoiceDetailsを非表示にする必要があり、電子メール として、このHTMLを送信しています。 つまり、電子メールでhtmlを送信すると、trInvoiceDetailsはそこにあるべきではありません。

trをコードの背後から隠す最善の方法は何ですか?

ありがとうございます。

答えて

0
string receipt = "<html> 
    <head></head> 
    <body> 
     <table style="width: 100%"> 
       <tr id="trInsuranceInfo" style="line-height: normal;"></tr> 
       <tr id="trCorpInfo" style="line-height: normal;"></tr> 
       %row% 
     </table> 
    </body> 
</html>" 

そして:

if(condition) 
    receipt = receipt.Replace("%row%", ""); 
else 
    receipt = receipt.Replace("%row%", "<tr id='trInvoiceDetails' style='line-height: normal;'></tr>"); 
+0

@Kobey Douek:HTMLはレシートという名前の文字列変数に格納されます。 私は、そのhtmlがtrが隠されたページにレンダリングされるときに条件を書く必要があります。 –

+0

更新された答えを見る –

0

はそれぞれノード[trInvoiceDetailsS​​tart]と[trInvoiceDetailsEnd] TR trInvoiceDetails前と後を追加します。

REGXを書く:

receipt = receipt.Replace(Regex.Match(receipt, @"\[trInvoiceDetailsStart\].*\[trInvoiceDetailsEnd\]", RegexOptions.Singleline).Value, string.Empty) 
関連する問題