Asp.net 如何向服务器端绑定添加变量
我有如下javascript代码:Asp.net 如何向服务器端绑定添加变量,asp.net,javascript,jquery,asp.net-mvc,Asp.net,Javascript,Jquery,Asp.net Mvc,我有如下javascript代码: $('#lnkPopup').click(function() { var id = $(this).attr('rel'); var msgCount = '<%= Model.ElementAt('+id+').MailCount %>'; }); 不起作用 那么,如何向服务器端查询添加javascript变量呢?基本上,您不需要。服务器代码将在服务器上执行,远远早于javascript在客户端上执行 为了让服务器端代码知道
$('#lnkPopup').click(function()
{
var id = $(this).attr('rel');
var msgCount = '<%= Model.ElementAt('+id+').MailCount %>';
});
不起作用
那么,如何向服务器端查询添加javascript变量呢?基本上,您不需要。服务器代码将在服务器上执行,远远早于javascript在客户端上执行 为了让服务器端代码知道javascript值,您必须对服务器进行ajax回调 或者,您可以使用服务器端代码编写包含元素和邮件计数的javascript哈希表。然后,该函数可以在执行时在该哈希表中查找它的值
有很多方法可以解决这个问题,需要理解的关键概念是,当javascript执行时,服务器代码就完成了,因此您最好将所有数据都放在页面上,或者使用ajax调用服务器。基本上,您没有。服务器代码将在服务器上执行,远远早于javascript在客户端上执行 为了让服务器端代码知道javascript值,您必须对服务器进行ajax回调 或者,您可以使用服务器端代码编写包含元素和邮件计数的javascript哈希表。然后,该函数可以在执行时在该哈希表中查找它的值
解决这个问题的方法有很多,要理解的关键概念是,当javascript执行时,服务器代码就完成了,所以最好将所有数据都放在页面上,或者使用ajax调用服务器。有两种可能的方法来回答这个问题 简而言之,你不能完全按照你的意图去做 首先要了解的是,服务器标记之间的代码只是服务器端代码 标签
<%=
…表示服务器将生成输出并将结果发送给客户端
Javascript和jQuery代码只是客户端代码
因此,javascript/jQuery不能直接与服务器端代码交互。但是,您可以从服务器端生成客户端代码
2如何从客户端代码到服务器端获取值
有几种方法可以实现这一点,这取决于您为web应用程序选择的样式以及当前的问题
发布或访问URL-这可能是
使用AJAX执行。
生成javascript/jQuery代码
您需要在服务器上安装,这样您就不会
需要发回。
有两种可能的方法来回答这个问题 简而言之,你不能完全按照你的意图去做 首先要了解的是,服务器标记之间的代码只是服务器端代码 标签
<%=
…表示服务器将生成输出并将结果发送给客户端
Javascript和jQuery代码只是客户端代码
因此,javascript/jQuery不能直接与服务器端代码交互。但是,您可以从服务器端生成客户端代码
2如何从客户端代码到服务器端获取值
有几种方法可以实现这一点,这取决于您为web应用程序选择的样式以及当前的问题
发布或访问URL-这可能是
使用AJAX执行。
生成javascript/jQuery代码
您需要在服务器上安装,这样您就不会
需要发回。
我就是这么想的。当数据已经存在于我的viewmodel中时,发出ajax请求似乎是一种浪费。一定有别的办法,我就是这么想的。当数据已经存在于我的viewmodel中时,发出ajax请求似乎是一种浪费。一定有别的办法。我最后做了这样的事。我最后做了这样的事。
function getMailCount(id) {
if (mailCountTable.length == 0)
$.ajax({async: false, url: '/mailcounttable', format: 'json',
success: function(data) { mailCountTable = data; } });
return mailCountTable[id];
}