我正在尝试在我的应用程序中进行一些验证,以检查数据库中是否已准备好 Function Name 。我不想使用SQL,而是想使用ajax来传递这些数据。
很遗憾,当尝试传递此 JSON(字符串)对象时,response
从未被传递过success: function (response)
,并且收到了错误消息。
我希望就为什么会发生这种情况提出一些建议,因为我认为我的代码在正确的格式内就可以成功完成。
我尝试将数据类型更改为text
,并且还包含了contentType: 'application/json; charset=utf-8
,但这无助于解决问题。
function AllowedFunction(FunctionName) {
var result = "None";
$.ajax({
url: '@Url.Action("FunAllowed")',
type: "POST",
dataType: "JSON",
data: { FunctionName: FunctionName },
success: function (response) {
if (response.length > 0)
{
result = "True";
}
else
{
result = "False";
}
}
});
return result;
}
// VAL: Function Name Allowed
public JsonResult FunAllowed(string FunctionName)
{
var records = db.Functions.Where(x => x.FunctionName == FunctionName).ToList();
string result = "False";
if (records.Count > 0)
result = "True";
return Json(records, JsonRequestBehavior.AllowGet);
}
ReferenceError:未在eval处定义响应(在AllowedFunction(http://localhost:52613/Functions/Create:50:9)处的eval,:1:1) 1.消息:“未定义响应” 2.堆栈:“ ReferenceError:响应未定义
答案 0 :(得分:0)
我认为这可能是因为您的FunAllowed
函数期望使用string
,但是您传递的是带有{em>属性的object
,名为{{1} },即FunctionName
。
我认为如果您执行此操作,可能无需更改JS代码即可>
string