【发布时间】:2015-01-29 05:06:27
【问题描述】:
使用以下代码通过查询字符串将少量值传递给控制器中的 testFn()。但在 testFn 中,我得到的是空值。当我对 companyName、rdVal 等保持警惕时。它显示正确的值。但那些没有传递给控制器。请让我知道出了什么问题。
查看:
@Html.ActionLink("Search", null, null, new { id = "lnkSearchMaster", @class = "btn btn-success", onclick = "return lnkgotoAction();" })
function lnkgotoAction() {
$('#grdSearchResults').show();
$('#searchdetails').show();
var rdVal = $("input[name = SearchType]:checked").attr("id");
if (rdVal == "CompanyList" || rdVal == "CompanyHistory" || rdVal == "ApplicationSatatus" || rdVal == "Certificates") {
$('#grdSearchResults').show();
var companyName = $('#companyname').val();
var status = $('#status').val();
var regNo = $('#registrationno').val();
var appRegNo = $('#applicationrefferenceno').val();
var url = '@Url.Content("~/")' + "Search/testFn?test='" + rdVal + "'&companyName='" + $('#companyname').val() +
"'®Num='" + $('#registrationno').val() + "'&appRegNum='" + $('#applicationrefferenceno').val() + "'";
alert(url);
}
$('#grdSearchResults').load(url + ' #grdSearchResults');
TempData.clear();
$('#grdSearchResults').show();
$('#searchdetails').show();
return false;
}
控制器:
public ActionResult testFn(string test, string companyName, string regNum, string appRegNum)
{}
【问题讨论】:
-
你还在敲控制器吗?使用
$('#grdSearchResults').load('@Url.Action("testFn", "Search")', { test: rdVal, companyName: companyName, regNo: regNo, appRegNum: appRegNum })。 -
是的,它正在击中控制器。但函数参数的值为空。我试过你的代码。仍然面临问题。 $('#grdSearchResults').load('@Url.Action("testFn", "Search")', { test: rdVal, companyName: companyName, regNo: regNo, appRegNum: appRegNum })
-
您发送的值很可能为空。在
.load()之前尝试console.log({ test: rdVal, companyName: companyName, regNo: regNo, appRegNum: appRegNum });并检查输出
标签: asp.net-mvc-5 asp.net-ajax