從剃刀調用Javascript方法問題背景:無法「IF」語句
我attemting檢查,如果用戶登錄到我的網站時,一個視圖渲染。
問題:
目前我設置用戶名稱爲ViewBag財產的控制器,然後訪問該在其各自的視圖。我面臨的問題是我的Razor語法中的IF語句似乎並未檢查ViewBag.userName屬性,而是反過來又沒有調用JavaScript方法來設置具有用戶名稱的按鈕的內部HTML。
作爲一個便箋,我有 - 作爲一個測試 - 將ViewBag屬性設置爲一個h3標記,以確保用戶名稱被傳遞到視圖。
代碼:
我的控制器,其中的用戶名設爲:
ViewBag.userName = Session["userName"];
的觀點:
檢查ViewBag物業使用者名稱的狀態,如果它不爲空即用戶已登錄,然後調用ShowUsersName方法將值設置爲按鈕內部的HTML。
@if (ViewBag.userName != null)
{
<script>
var userName= @ViewBag.userName;
ShowUsersName(userName);
</script>
}
ShowUsersName方法:
<script type="text/javascript">
var ShowUsersName = function (userName) {
var html = '<span class="glyphicon glyphicon-user"></span> Hi, '+ userName +'"<strong class="caret glyphicon glyphicon-triangle-bottom"></strong>';
document.getElementById("userButton").innerHTML = html;
};
</script>
爲了確保只是檢查你的頁面查看源代碼,如果你發現在IF塊中的語句的話,正確的執行,現在的問題是在JS函數中。 –
您的代碼片段是否完整? ShowUsersName中有關閉腳本標記嗎?另外我會在var userName =「@ ViewBag.userName」中附上帶有雙引號的「@ ViewBag.userName」; – nimeshjm
另外,它應該是ShowUsersName(userName); ? – nimeshjm