将变量从 ASP.net 传递给 JavaScript

IT技术 javascript asp.net
2021-03-02 08:10:30

如何将变量从 asp.net 传递给 JavaScript?

6个回答

在你的代码后面创建一个属性

protected string MyProperty { get { return "your value"; } }

然后在javascript中

var myValue = "<%= MyProperty %>";

有多种方式:

1 - 用 Ja​​vaScript 写出来<%= myVariable %>
2 - 设置 cookie 服务器端,然后检索 cookie 客户端
3 - 将隐藏表单输入设置为您的值
4 - 使用该值作为查询字符串参数重定向到您的页面,然后使用 JavaScript
5解析参数- 在服务器端构建所有 JavaScript,保存到变量,然后在客户端写出变量。
6 - 使用 AJAX 请求检索值

第一个选项导致VBScript runtime error '800a000d' Type mismatch......至少当'myVariable'是经典asp页面中的记录集变量时,例如<%= rs("myVariable") %>
2021-05-08 08:10:30

您可以使用 ASP.Net HiddenField。您只需在服务器上设置它的值,并在需要时通过 javascript 检索它。

服务器端

hdf_Test.Value = "yourValue";

HTML

<asp:HiddenField runat="server" ID="hdf_Test" />

Javascript

document.getElementById('hdf_Test').value
在服务器端此代码不起作用我试过字符串 x; x.value="d"; 它给了我错误?
2021-04-19 08:10:30
那是因为您正在尝试使用变量而不是 HiddenField 控件。我已经用更多信息更新了我的答案。
2021-05-12 08:10:30

您可以在后面的代码中使用它:

公共字符串json;

你需要给它一个值

在您的 JavaScript 中,您可以输入:

<script>
    var myVar = <%=json%>;
</script>
  1. 使用 javascript 标签

    <script>
        var var1 = @var1;  
        var var2 = @var2;  
    </script>
    
  2. 使用隐藏字段

    <input type="hidden" value="@var1" id="h_var1"/>  
    <input type="hidden" value="@var2" id="h_var2" />`
    

在js中

$(function()
{
    var var1 = $("#h_var1").val();
    var var2 = $("#h_var2").val();
}

3.使用json通过ajax检索数据

var var1;
var var2;
    $.get(url,function(result)
    {
        var1 = result.var1; var2 = result.var2;
     }

@var 语法取决于您的视图引擎。也许 <%= Var1 %>