ajax如何返回值
Ajax. How can I return value?
我希望将结果设置为MVC控制器方法中的变量。
function someFunction(){
var result;
$.Ajax{
//???
}
return result;
}
//与c++相比
int f() { //just! return result; }
附言:它不是异步的,它应该是同步函数调用,以便向函数体返回值。
设置控制器
public ActionResult Foo(){
return Content("Hello Anton");
}
设置ajax请求,记住将其设为async:false
,默认情况下为true,以便返回值
function greeting(){
var x= $.ajax({
url:'/ControllerName/Foo',
async:false,
});
return x.responseText();
}
现在你可以调用类似的函数
var v = greeting();
alert(v); //if every thing goes well you will see "Hello Anton"
function someFunction(){
var result;
$.Ajax({
url: '/some/ajax/call',
success: function (data){
result = data;
}
});
return result;
}
请参阅有关成功的部分:http://api.jquery.com/jQuery.ajax/
您不能依赖于返回结果,因为正如Anwar所提到的,ajax是异步的。你要做的是定义一个回调函数,一旦结果返回,它就会对结果进行处理,在这种情况下是"成功"函数。
var result;
function someFunction(){
var result;
$.Ajax({
url: '/some/ajax/call',
success: function (data){
result = data;
// call a method that processes result
}
});
}
你可以这样做。。。result
是在调用函数之前创建的-在AJAX调用成功返回数据后,success方法将data
分配给result
,您可以在结果更新后调用函数-以执行其他操作
$.ajax({
url: '/{Your Controller Name}/{Action Name}',
success: function(data) {
alert('My returned data is:' + data);
}
});
成功处理Ajax请求后,您可以处理返回的成功事件中的数据。
编辑:我已经试验了3nigma的答案,它按照安东的要求工作。
相关文章:
- 从python中调用C++函数并获取返回值
- 为什么模板类中的对象不能返回值
- 返回值优化:显式移动还是隐式
- lock_guard是否保护返回值
- 调用CreateProcess()并获取字符串的返回值
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- 编译器警告:执行到达值返回函数的末尾而不返回值
- 查找 GCD:并非所有控制路径都返回值
- 在 Arduino 上使用 sscanf 会导致与 const char * 不匹配,并且返回值始终相同,尽管输入值不同
- 将返回值存储在函数指针数组的指针中是如何工作的?
- 如何从 std::thread 返回值
- 将返回值从 exe 传递到 bat,并将其传递给 C# 中的进程
- 方法错误"not all control paths return a value"和方法不返回值
- 如何读取 C++ SAFEARRAY**,该 SAFEARRAY** 是 COM 互操作的结果,其中 C# 返回值为
- 对fread的返回值感到困惑
- 程序不向函数返回值
- 如何在另一个函数中使用返回值作为参数?
- 如何使用 uint64_t 键类型从 std::map<int, std::string> 返回值?
- 使用 std::p air 进行返回值优化
- ajax如何返回值