【发布时间】:2022-01-17 21:07:31
【问题描述】:
我正在尝试将
我的问题是现在我无法将值传递给控制器。
这是我要设置过滤器的第一个视图中的代码:
@if (MainFaqCategories != null && MainFaqCategories != null && MainFaqCategories.Count != 0)
{<ul class="faq-menu">
@foreach (var mainType in MainFaqCategories)
{
<li id="@mainType.TabCode" onclick="getChosenCategory(this.id)">@mainType.Descr</li>
}
</ul>
}
这是我的 Ajax 代码:
var lang = $("html").attr("lang");
function getChosenCategory(selectedCategory) {
console.log(selectedCategory);
var url = '@Url.Action("GetChosenFaqSubCategory")';
$.ajax({
url: url,
type: 'POST',
async: true,
data: { TypeCode: selectedCategory},
});
}
这是我在控制器中的代码:
[HttpPost]
public ActionResult GetChosenFaqSubCategory(string TypeCode)
{
string pFilter = "WebFaqCategoryCd=" + TypeCode;
int maxnr = Convert.ToInt32(MaxNbrFaq);
List<ArticleFAQ> subCategories = ServiceWrapper.GetWebFaq(pCoCd, language, loginId, pFilter, out maxnr, out errorText);
return PartialView("GlobalFAQ", subCategories);
}
作为我在控制台中遇到的错误:
POST - http://localhost:4361/en/FAQ/GetChosenFaqSubCategory - 404(未找到)
当我删除语言部分时,其他控制器会抛出错误,因为该站点有多种语言并且我需要它
【问题讨论】:
-
你有什么错误?你检查浏览器的开发者工具了吗?
-
作为我在控制台中遇到的错误:POST localhost:4361/en/faq/GetChosenFaqSubCategory?TypeCode=20 - 404(未找到)。当我删除语言部分时,其他控制器会抛出错误,因为该站点有多种语言,我需要它
-
您的控制器名称是什么?
标签: c# asp.net-mvc asp.net-mvc-4 asp.net-web-api model-view-controller