单击按钮时,我尝试将用户在文本框中输入的产品名称值发送到要修改的服务器,然后使用 AJAX 返回到页面。我正在 Controller 中进入 ChangeName 方法,但没有进入我的成功函数来提醒新名称。
JS:
$("#changeNameButton").click(function () {
var productName = $("#Name").val();
$.ajax({
url: '/Products/ChangeName/',
type: 'POST',
dataType: 'JSON',
data: {name: productName},
success: successFunc
});
});
function successFunc(data) {
alert(data);
}
Controller :
public string ChangeName(string name)
{
string changedName = ChangeNameHelper(name);
return changedName;
}
如果有人可以就在 MVC5/6 中对 Controller 进行异步调用的正确方法提供建议,那就太好了。
我的主要问题是我永远不会在响应时进入 successFunc() 。
最佳答案
关于你的评论,如果你只返回一个字符串,MVC 会将其转换为 json。
现在,在更新后的代码中,您仍然调用其自身内部的方法。请调用 stringchangedName = ChangeNameForResult(name);
或任何具有其他名称的函数。
关于javascript - 向 MVC Controller 发出 AJAX 请求并从 js 中的响应中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34885169/