2015-02-06 94 views
0
var nUserID = '<% if (ids != null) {ids.userID.ToString();}%>' 

注:IDS不爲空,也不ids.userID爲空,但EM越來越nUserID =「」
有什麼辦法到C#字符串轉換爲JavaScript字符串?分配C#字符串JavaScript變量

+1

你不應該認爲這是 「一個C#字符串轉換爲JavaScript字符串」。這樣的事情是沒有意義的..在這個場景中,兩個人不會互動,在這個場景中,頁面被渲染。你的C#只是被解釋和結果轉儲到HTML中。 – 2015-02-06 10:20:25

回答

3

對於寫它直接頁面上,你需要使用Response.Write作爲

var nUserID = <% if (ids != null) {Response.Write(ids.userID.ToString());}%> 

那旁邊,如果你需要在最後;添加或放在裏面的配額是由你。

<% %>沒有寫在頁面上,只是運行代碼。
<%= %>寫在頁面上爲Response.Write

+0

...或只是讓它評價你:'var nUserID =「<%= ids.userID%>」' – 2015-02-06 10:22:34

+0

@SimonWhitehead但是,如果用戶需要一些檢查null? – Aristos 2015-02-06 10:24:00

+0

Touche - 我完全不理會那部分。我很抱歉。我仍然會使用'<%= %>',但是在方法中包含NullRef檢查:) – 2015-02-06 10:25:45

0
var nUserID = '<%=((ids != null) ? ids.userID.ToString() : "0")%>'; 
0

更合適的解決辦法是給你的ids.userID保存到一些相關的html元素的數據屬性或只是創造無形div元素與要使用所有C#數據在您的javascript代碼中爲data屬性。然後使用jQuery在腳本中提取數據。

<div id="settings" style="display: none;" data-user-id="<%= ids.userID %>"></div> 

和javascript:

var nUserID = $('#settings').data('user-id'); 
0

使用這樣的:

<script type="text/javascript"> 

    var nUserID = '<%=ids.userID.ToString()%>'; 

if(!nUserID) 
{ 
//check for null in javascript 
alert(nUserID); 

} 

    </script> 
相關問題