c# - 在 C# 代码中引用 jquery 变量 (ASP.NET MVC)

标签 c# javascript asp.net-mvc

如何使用 ASP.NET MVC 引用 View 中 C# block 中的 jquery 变量?

例如:

$(":input[@name='mydropdown']").change(function () {
        var selection = $("#myselection").val();
        pop($("#md"), <%= Model.choices[selection] %>);
});

我的 C# block 中的选择与我的 jquery 中引用的选择相同。

最佳答案

这是不可能做到的。 C# 代码在 HTML 发送到用户浏览器之前执行,即在加载 jQuery 之前,即在变量 selection 有机会存在之前。

有两种方法可以解决这个问题:

  1. 将您关心的所有数据从 Model.choices 转储到 JavaScript 变量;然后你的 JS 代码就可以访问该变量。如果您的数据量不太大,这很简单而且很好。
  2. 让 JS 代码向服务器发出 AJAX 请求,通过将 selection 的值作为查询字符串参数传递来获取所需的任何数据。

关于c# - 在 C# 代码中引用 jquery 变量 (ASP.NET MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6830098/

相关文章:

c# - Newtonsoft JSON ShouldSerialize 和继承

javascript - 在 Javascript 中获取选定文本

javascript - 如何从 firestore 两个集合中获取数据并将所有数据合并在一起

c# - 调用 Texture2D.readPixels 时 iOS 挂起

c# - Scala 相当于 C# 中的 `??` 运算符

c# - Android TextView defStyle 参数被忽略?

php - 位置重定向 - 可以进行跟踪吗?

c# - .NET MVC 路由(忽略文件扩展名)

c# - 需要截断 Razor HTML DisplayFor Helper

asp.net - 使用 ViewModel 模式在 MVC 中的何处放置逻辑