将 C# 字符串分配给 Javascript 变量
Assign C# string to Javascript variable
var nUserID = '<% if (ids != null) {ids.userID.ToString();}%>'
注意:ids 不为空,ids.userID 也不为空,但 em 得到 nUserID = ""
有没有办法将 C# 字符串转换为 Javascript 字符串?
要直接写在页面上,您需要使用 Response.Write
as
var nUserID = <% if (ids != null) {Response.Write(ids.userID.ToString());}%>
除此之外,如果您需要在末尾添加 ;
或将其置于配额内,由您决定。
<% %>
没有写在页面上,只是运行代码。
<%= %>
在页面上写为 Response.Write
var nUserID = '<%=((ids != null) ? ids.userID.ToString() : "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');
像这样使用:
<script type="text/javascript">
var nUserID = '<%=ids.userID.ToString()%>';
if(!nUserID)
{
//check for null in javascript
alert(nUserID);
}
</script>
var nUserID = '<% if (ids != null) {ids.userID.ToString();}%>'
注意:ids 不为空,ids.userID 也不为空,但 em 得到 nUserID = ""
有没有办法将 C# 字符串转换为 Javascript 字符串?
要直接写在页面上,您需要使用 Response.Write
as
var nUserID = <% if (ids != null) {Response.Write(ids.userID.ToString());}%>
除此之外,如果您需要在末尾添加 ;
或将其置于配额内,由您决定。
<% %>
没有写在页面上,只是运行代码。
<%= %>
在页面上写为 Response.Write
var nUserID = '<%=((ids != null) ? ids.userID.ToString() : "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');
像这样使用:
<script type="text/javascript">
var nUserID = '<%=ids.userID.ToString()%>';
if(!nUserID)
{
//check for null in javascript
alert(nUserID);
}
</script>