Html.Action 来自 Javascript 包含 js 变量作为参数
Html.Action from Javascript include js var as parameter
我在调用方法时遇到问题。我可以用下面的代码来做,但是如何在我的调用中放入 js 变量?
$.ajax({
url: '@Url.Action("surfacepost", "surface", new { text = "ThisSchouldBeAJaVar" })',
method: 'GET',
success: function (data) {
}
});
事实上,正如我要展示的那样,这个方法正在变得不完整。因此,如果有更好的使用 js 动态加载部分的方法,也请告诉我。
谢谢
问题是'@Url.Action()'方法是由.NET执行的,在页面发送到浏览器之前,它不知道页面上有任何javascript ,并且页面有'left the server'
后,方法的执行不能受到javascript即运行的影响
您可以做的是创建一个占位符,并将其替换为 javascript:
var url = '@Url.Action("surfacepost", "surface", new { text = "placeholder" })'
url.replace('placeholder', ThisSchouldBeAJaVar);
$.ajax({
url: url,
method: 'GET',
success: function (data) {
}
});
或者您可以只键入 url 并附加变量:
$.ajax({
url: '/surface/surfacepost/?text=' + ThisSchouldBeAJaVar,
method: 'GET',
success: function (data) {
}
});
我在调用方法时遇到问题。我可以用下面的代码来做,但是如何在我的调用中放入 js 变量?
$.ajax({
url: '@Url.Action("surfacepost", "surface", new { text = "ThisSchouldBeAJaVar" })',
method: 'GET',
success: function (data) {
}
});
事实上,正如我要展示的那样,这个方法正在变得不完整。因此,如果有更好的使用 js 动态加载部分的方法,也请告诉我。 谢谢
问题是'@Url.Action()'方法是由.NET执行的,在页面发送到浏览器之前,它不知道页面上有任何javascript ,并且页面有'left the server'
后,方法的执行不能受到javascript即运行的影响您可以做的是创建一个占位符,并将其替换为 javascript:
var url = '@Url.Action("surfacepost", "surface", new { text = "placeholder" })'
url.replace('placeholder', ThisSchouldBeAJaVar);
$.ajax({
url: url,
method: 'GET',
success: function (data) {
}
});
或者您可以只键入 url 并附加变量:
$.ajax({
url: '/surface/surfacepost/?text=' + ThisSchouldBeAJaVar,
method: 'GET',
success: function (data) {
}
});