我正在制作一个全球化的 asp.net mvc 解决方案。
我已经使用资源文件(Resources.fr.resx & Resources.nl.resx)和
routes.MapRoute(
"Default",
"{language}/{controller}/{action}/{id}",
new { language="Nl", controller = "Home", action = "Index", id = UrlParameter.Optional },
new { language ="Nl|Fr" }
);
现在我想制作 2 个级联下拉列表,如下所示:
$('#ddl_Author').change(function () {
var ddlsource = "#ddl_Author";
var ddltarget = "#ddl_Books";
$.getJSON('@Url.Action("Books")', { authorId: $(ddlsource).val() }, function (data) {
$(ddltarget).empty();
$.each(data, function (index, optionData) {
$(ddltarget).append("<option value='" + optionData.Value + "'>" + optionData.Text + "</option>");
});
});
});
我的问题是我必须使用什么作为 url,'@Url.Action("Books")' 似乎不起作用......
这是我的控制器:
public ActionResult Books(int authorId)
{
var books = _bookService.GetBooks(authorId);
...
return Json(books.ToList(), JsonRequestBehavior.AllowGet);
}