繁体   English   中英

如何在引用C#函数的Google可视化中包含JavaScript变量

[英]How to include javascript variable in google visualization referencing c# function

尝试在要调用的c#函数中包含javascript变量“ selectedValue”时出错。 SelectedValue在GetTotalLicensesCount内部有红色下划线错误。

function drawExpireGauge() {

    var selectedValue = "30days";

        var data = google.visualization.arrayToDataTable([
              ['Label', 'Value'],
              ['Expiring', <%=GetTotalLicensesCount(null, null, null, selectedValue, selectedValue, null, null)%>],
              ['New', <%=GetTotalLicensesCount(null, null, null, null, null, null, selectedValue)%>],
              ['Not Used', 0]
        ]);
}

如果将“ 30days”简单地放置在GetTotalLicensesCount函数而不是变量中,则它可以工作。

我进行了尽职调查,并在论坛上搜索了类似的问题,但是找不到任何问题,请让我知道该如何更改该问题,或者是否有合理的副本可以回答该问题。

C#代码不会在js执行过程中执行。

您注入的C#代码是模板的一部分,该模板将生成最终将在客户端上执行的js代码。 因此,C#代码将无法访问“ selectedValue”。

因此,C#代码在服务器上运行,有助于生成发送回客户端的HTTP响应。 JS代码在收到响应后立即在客户端上运行。

您有两个选择,Ajax返回服务器以获取数据,或将所有数据提供给js,以便您可以编写GetTotalLicensesCount的js版本。

哪种方法的选择取决于:-

1)有多少数据(小,用js,大,ajax完成)

2)如果计算所需的任何数据都是敏感数据,并且您不希望用户看到它。 (始终使用ajax避免暴露敏感数据)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM