2012-12-13 31 views
2

我想在html代碼中使用DateTime.Now.Month顯示/隱藏表格行,但我記不清正確的語法。我的意思是以上,但不是以這種方式工作。什麼是正確的語法?在此先感謝用C#代碼設置HTML表格行的可見性?

<tr style='<%# DateTime.Now.Month==11? "display:none": "display:inline"%>' ></tr> 

回答

2

ASP標記有多種口味。你寫的代碼是正確的,但是因爲你使用了錯誤的asp標籤,所以什麼也沒有顯示出來。

這是您要使用的標籤: <%= %>最有用的顯示單條信息

這是您目前使用的標籤: <%# %>數據綁定表達式語法 這並不因爲工作你沒有使用數據綁定,你只是迴應一個字符串。

此處瞭解詳情:http://forums.asp.net/p/1139381/1828702.aspx 這裏http://msdn.microsoft.com/en-us/library/6dwsdcf5.aspx

+0

非常感謝,它工作:) –

2

您正在使用style tagjavascript未執行。您可以在body onload事件或jquery document.ready事件上使用JavaScript來執行腳本。

您正在使用2 digit year,你會得到4 digit year,您需要更改11至2011年

使用JavaScript

<body onload="CallTrShowHIde();"> 
    <table>  
     <tr id="tr1" onload='alert("ac")' ><td>hello123</td></tr> 
    </table> 
</body> 

function CallTrShowHIde() 
{ 
     var year = '<%= DateTime.Now.Year %>'; 
     if (year == 2012) 
      document.getElementById('tr1').style.display="none"; 
     else 
      document.getElementById('tr1').style.display = "inline"; 
} 

使用jQuery。

<tr id="tr1"> 
    <td>Show or hide </td> 
</tr> 

$(function() { 
     var year = '<%= DateTime.Now.Year %>'; 
     if (year == 2012) 
      $('#tr1').hide(); 
     else 
      $('#tr1').hide(); 
}); 
+0

感謝您的快速答案,但它不工作:( –

+0

我已經更新了我的回答與工作代碼,我希望這將有助於 – Adil

3

DateTime.Now.Year大概應該是DateTime.Now.Month

+0

是的,你是。對,我編輯過這個問題 –

+0

難道它不是一個評論而不是一個答案嗎? –

相關問題