繁体   English   中英

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

[英]Referencing jquery variables in C# code (ASP.NET MVC)

如何使用ASP.NET MVC在视图的C#块中引用jquery变量?

例如:

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

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

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

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

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

也许尝试从jquery网站的Sharpkit插件:

http://plugins.jquery.com/project/SharpKit

您无法执行此操作,因为浏览器(客户端)不与服务器共享任何内存或状态

  • 服务器执行呈现html和js的c#
  • 浏览器下载并解释
  • 浏览器执行javascript(没有c#!)

我会赞同乔恩的建议1),因为通过消除对服务器的另一个回调的需求,它会更具性能。

ASP.NET MVC万岁! :)

暂无
暂无

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

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