[英]ASP MVC2 execute controller method in javascript
在我的ASP應用程序中,我試圖從數據庫中檢索一個值。 從JavaScript,我嘗試執行控制器方法。
Java腳本
function getCapital(country) {
//alert(country);
var url = "~/Home/Capital";
$.get(url, { country: country }, function (response) {
$("#getCapital").html(response);
alert(response);
});
控制器(主頁)
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>
這是瀏覽器控制台的輸出。 因此,有時它會記錄URL而不會出現錯誤。
問題似乎與您的URL有關,在javascript中,您不需要在URL中加上“〜”,您可以使用
var url = "/Home/Capital";
MVC中URL的更好方法是通過傳遞如下的控制器和操作名稱來使用@URL
@Url.Action("Capital", "Home")
因此,您可以按以下方式修改JavaScript,在“ Captial”操作中添加一個斷點,然后看到有電話呼叫,還可以查看瀏覽器控制台,看看是否發生任何錯誤。
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);
});
}
編輯或
function getCapital(country) {
//alert(country);
var url = "/Home/Capital";
console.log(url);
$.get(url, { country: country }, function (response) {
$("#getCapital").html(response);
alert(response);
});
}
如果您需要更多信息,請與我們聯系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.