通过ajax接收json
Receiving json via ajax asp.net
我的变量数据在函数ShowFavorits是未定义的,即使我的ajax调用返回json字符串。
<script type="text/javascript">
$(document).ready(function () {
ShowFavorits();
function AjaxGet() {
var param = "{'_userID': '1337'}";
$.ajax({
type: "POST",
url: "/webservices/MinSide.asmx/GetFavorits",
data: param,
contentType: "application/json;",
dataType: "json",
success: function (data) {
if (data.hasOwnProperty("d")) {
return (data.d);
}
},
error: function (data) {
//error
}
});
}
function ShowFavorits() {
var data = AjaxGet();
$("#addedList").html(
$("#addedTemplate").render(data)
);
}
});
[WebMethod]
public string GetFavorits(string _userID)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
jss.MaxJsonLength = int.MaxValue;
string JsonData = string.Empty;
var db = new ModelDataContext();
var list = db.table.Where(x => x.userID == _userID).OrderBy(x=> x.TimePin).ToList();
JsonData = jss.Serialize(list);
return (JsonData);
}
为什么我不能从我的ajax返回结果?
希望有人能帮助我,已经被卡住了几个小时,现在调试这个
对AjaxGet
中$.ajax
的调用是异步的:函数返回undefined,因为ajax调用尚未完成。
您应该将对ShowFavourits
的调用移动到ajax成功函数中,以便它在ajax调用完成/成功后执行
<script type="text/javascript">
$(document).ready(function () {
// Kick-off the ajax request
AjaxGet();
function AjaxGet() {
var param = {_userID: '1337'};
$.ajax({
type: "POST",
url: "/webservices/MinSide.asmx/GetFavorits",
data: param,
dataType: "json",
success: function (data) {
if (data.hasOwnProperty("d")) {
ShowFavorits(data.d); // Pass the data to the template
}
}
});
}
function ShowFavorits(data) {
$("#addedList").html(
$("#addedTemplate").render(data)
);
}
});
相关文章:
- REST API 服务器是否应该使用 PUT 接收 JSON 数据或普通表单数据
- 调用函数并接收JSON
- Json在动态接收时无法解析(使用socket.io)
- node.js将接收到的字符串拆分为不同的变量,然后格式化为json字符串
- C#Web服务,如何接收JSON
- 接收package.json的解析错误.验证为有效的json
- 快递邮件接收json不是我发送的
- 当接收不同的数组元素时,数组中的JSON对象相同
- 接收json异步响应的最有效方式
- 根据接收到的输入从JSON中获取数据
- 使用php、ajax、javascribt、json、post从服务器发送数据并接收数据
- 解析从控制器接收的 Json
- 如何在 jquery 成功方法中接收 JSON 并使用该 JSON 构建 HTML 内容
- 使用 2 个键从 JSON AngularJS 接收数据
- 在 django 中接收嵌套的 JSON 对象
- 从 json 接收的 jQuery 刷新数据
- 循环接收到的 JSON 字符串以通过 jQuery 获取值
- 通过JSON接收数据时,清除子下拉列表中的旧选项
- 通过JSON接收数据后的可编辑文本框
- 正在从JSon接收未定义的值