在我的ASP应用程序中,我正在尝试从数据库中检索值。从javascript我尝试执行一个控制器方法。
的Javascript
function getCapital(country) {
//alert(country);
var url = "~/Home/Capital";
$.get(url, { country: country }, function (response) {
$("#getCapital").html(response);
alert(response);
});
Controller(Home)
public string Capital(string country)
{
return capitalService.getCapital("Frankrijk");
}
但我没有结果。
修改
查看
<script type="text/javascript" src="/Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript" src="/Scripts/World.js" ></script>
这是Browser Console的输出。因此,有时它会记录URL而不会出错。
答案 0 :(得分:1)
问题似乎与您的网址有关,在javascript中您不需要放置&#39;〜&#39;使用您的网址,您可以使用
var url = "/Home/Capital";
MVC中更好的URL方法是通过传递控制器和操作名称来使用@URL,如下所示
@Url.Action("Capital", "Home")
因此,您可以修改您的javascript,如下所示,在您的操作中添加一个断点&#34; Captial&#34;并且看到你接到一个电话,你也可以查看浏览器控制台并查看是否发生任何错误。
function getCapital(country) {
//alert(country);
var url = '@Url.Action("Capital", "Home")';
console.log(url);
$.get(url, { country: country }, function (response) {
$("#getCapital").html(response);
alert(response);
});
}
EDIT 或者
function getCapital(country) {
//alert(country);
var url = "/Home/Capital";
console.log(url);
$.get(url, { country: country }, function (response) {
$("#getCapital").html(response);
alert(response);
});
}
如果您需要更多信息,请与我们联系。