如何将JQuery变量传递给Razor?
我有jQuery代码:如何将JQuery变量传递给Razor?
$(document).ready(function() {
$('.LikeArea').click(function() {
var num = parseInt(this.html());
num++;
elem.html(num);
});
});
现在我想NUM通过jQuery的变量剃刀,所以我可以更新为新值的数据库。
Razor是一个视图引擎。当你说你想将一个jQuery变量传递给Razor时,不确定你的意思,因为Razor在任何javascript之前在服务器上运行。你可以使用AJAX虽然发送一个请求到服务器端模板:
$(document).ready(function() {
$('.LikeArea').click(function() {
var num = parseInt(this.html());
num++;
elem.html(num);
$.ajax({
url: '/foo.cshtml',
type: 'POST',
data: { num: num },
success: function(result) {
// TODO: do something with the result returned by the
// foo.cshtml template
}
});
});
});
这将发送一个AJAX请求到/foo.cshtml
模板中,你可以获取这样的变量:
@{
var num = Request["num"];
}
...
感谢您的快速回复。但我对MVC并不熟悉。我正在使用WebMatrix。你能告诉我如何使用WebMatrix得到相同的结果吗? – Xon 2012-01-29 19:30:57
@Xoni,哦,对不起,我以为你使用的是ASP.NET MVC。我已经更新了我的答案,以提供WebPages的例子。 – 2012-01-29 19:34:50
@ DarinDimitrov - 我同意你的方法,但是你认为使用jQuery的'.post()'可能会更好吗?它做同样的事情,但可能会更直截了当。只是我的意见真的。 – 2012-01-29 19:40:07
可能的复制[如何从JavaScript变量传递一个值给剃刀变量?](https://stackoverflow.com/questions/28317182/how-to-pass-a-value-to-razor-variable-from-javascript-variable) – 2017-06-20 15:23:10