问题标签 [jquery-ajax]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ajax - Ajax 成功在 asp.net 核心中返回“未定义”
我正在尝试通过 ajax 获取 json 数据并在视图中显示它们。数据在操作方法中是正确的,但是当我想在表中显示数据时,所有的 s 都显示为未定义,而且我知道我没有这么多行。也许是因为 for 循环和每个循环但我真的不知道如何解决它。这是json数据:
这是阿贾克斯:
我进行了很多搜索,但没有找到任何解决该问题的方法。
更新这是 console.log(ListData) 的输出:
web-services - 来自 QlikView 扩展对象的 jquery ajax 请求发送 OPTION 而不是 GET(在 Fiddler 中检查)
我正面临从 QlikView 自定义对象对 Web 服务进行 jQuery ajax 调用的问题。ajax 调用成功地从浏览器以及从 Fiddler 和 POSTMAN 到 Web 服务工作。
在检查 Fiddler 后,我发现请求是“OPTION”而不是“GET”。响应为 200 OK,但未调用 Web 服务方法。感谢这方面的任何帮助。
来自 Fiddler 的请求标头:
来自 Fiddler 的响应标头:
jquery - 在 jQuery 中请求不使用 `$.ajax` 调用
我需要使用 jQuery 进行 ajax 调用,并且需要根据条件的结果传递不同的 ajax 选项if/else
。
这就是我尝试的方式:
这就是我从外部调用 ajax 请求的方式if/else
:
我的问题是请求不适用ajaxOptions
,当我尝试以标准方式工作时。谁能告诉这里会有什么问题?
asp.net-core - 从 ASP.NET Core 中的 Ajax 获取数据不起作用?
我是 ASP.NET Core 的新手,这就是我从 Ajax 获取数据的方式。
我有一个像这样的视图模型
当我搜索表单时,我使用 Ajax 来获取数据
这是控制器
这是视图
这是部分观点
但是我无法获取数据,我不知道我错在哪里,所以请帮助。提前致谢。
c# - Asp .NET Core MVC:jQuery Ajax、异步等待和会话数据管理
快速总结:在 ASP.NET Core (Net 5) MVC 项目中,我需要一种方法来保持对齐和同步单个页面中的各种控件(网格、仪表板,都在同一页面中),并使用一些保存其数据的会话变量(我知道,糟糕的设计决定,但现在我不能决定)。这些控件通过对 MVC 控制器的 ajax 请求交互和更改会话数据。执行此操作的最佳方式/模式是什么?
详细的版本:我必须将旧的 ASP.NET WebForms 移植到带有 Razor 页面的 ASP.NET Core MVC 应用程序。我有一个带有各种网格的页面,它们的行为如下(也在旧应用程序中):
当控制器启动网格时,检查它们的数据源是否在 HttpContext.Session["key"] 中,如果是,则从 session 中获取,否则,从 db 中获取并将其放入 session,以便下次它重新加载,它从会话中获取它。
现在是关键部分。其中一个网格具有打开弹出窗口和修改数据的按钮,也用于直接与会话交互的其他网格,因此其他网格从会话键重新加载数据。
基本概念是,此页面中发生的对网格数据的每次修改都存在于会话变量中(每个网格都有自己的),并且仅在页面第一次在会话中加载时才实际调用 db 来获取数据. 页面数据编辑完成后,您保存并将其全部提交到数据库并释放会话变量。
我的问题是:
我从网格修改数据并调用 jquery ajax:
这是控制器
我的疑问是 ajax 如何管理异步控制器操作。
如果我调用 ajax 并且用户多次单击按钮会发生什么?
会话同时被修改多次?我不知道 jquery ajax 是否立即将控制器和控件调用到 javascript 并触发多个请求允许多个线程修改会话?
还是 ajax 将异步调用排入队列并一个接一个地执行?
我不知道 ajax 成功/错误事件是否仅基于 HTTP 200 返回,即使控制器触发错误也是如此。
我还考虑过使用 return Ok(); 管理控制器返回请求。返回 BadRequest(....);
因为它可能是管理 ajax 错误/成功的更好方法。
我还考虑过将 ajax async 设置为 false 以使其同步。
谁能建议我用 MVC 中的会话和 ajax 来管理这个更好的模式?
客户的要求是继续使用会话,因此避免它们并不是一个真正的选择。
asp.net-mvc - ASP.NET MVC 应用程序或 API 中的 jQuery axax 生命周期和响应
在调用端点时,我需要澄清 jQuery Ajax 生命周期,在我的特定情况下是 ASP.NET MVC (Net core/Net 5) 应用程序。
我特别需要知道成功/错误事件链是如何工作的,以及一旦触发 http 调用,控件何时返回给 jquery。
让我们想象一个像这样的jquery ajax
在服务器上,我有一个异步任务控制器,我们可以将其定义为:
它从 asp net 异步执行(我猜)。
现在,假设我在这个动作中做了各种危险的任务,比如操纵
调用其他需要一些时间才能执行的异步内容(假设是 30 秒,以便提出最坏的情况。
这一切加在一起。
现在,什么时候 javascript 重新获得控制权以及什么时候成功???
我处理对了吗?
我的意思是,所有异步的东西都在发生(ajax 异步,mvc 操作是异步的等等。只有在我的 MVC 操作完成并获得结果后,jquery 操作才会成功?
或者 jquery ajax 设法调用我的操作这一事实将导致 HTTP 200(所以没关系/成功),它将忽略内部调用的所有代码,必须以另一种方式处理,以下 javascript 将是执行?
基本上我想知道我是否可以执行 MVC 操作中的所有代码,确保只有当操作完成所有代码时 ajax 才会进入成功/错误
和
如果 jquery ajax 之后的 javascript 将继续执行并且对 ajax 操作的控制将稍后返回
jquery - 使用 jquery ajax 从 asp.net 网页表单页面调用 web api url
我有一个 web api 方法,它的 url 如下:
https://www.mycompany.es/webapi/deptartment/search/{partialDepartmentName}
此 Web api 方法返回一个 JSON,其中包含包含 partialDepartmentName 的所有部门名称。
我已经使用 Telerik Fiddler Classic 进行了检查,方法是在下面输入 url 来搜索在作曲家中包含“财务”(不带双引号)的部门并使用 GET 动词(POST 不起作用)。
它工作正常。现在我想使用我的 asp.net 网页表单页面中的 jQuery ajax 调用来做同样的事情,如下所示:
但它不起作用?我究竟做错了什么?对不起,我是网络开发的新手...
asp.net-core-mvc - 如何在不过度发布整个 ViewModel 的情况下发出 POST 请求,但在失败的情况下保留 View 中的当前 ViewModel 数据
我有一个 API 后端项目,使用 Identity Server 4 和 MVC 客户端项目制作的身份提供者。为简单起见,让我们假设我OrganizationDetailsViewModel
看起来像下面所述,只有很少的属性和一组成员。SearchMetadata
是一个包含搜索、过滤和分页数据的对象。
成员显示在带有分页的表格中,其中有几个按钮与每个成员绑定的不同操作(例如,编辑、删除、提升)。例如,编辑会导致单独的编辑视图使用表单来更新 和 等Name
属性Description
。流程如下所示:
_organizationService
是处理与 API 后端、CreateErrorActionResult
方法的通信400
或412
将 API 返回的错误添加到 modelState 并返回的服务View(model)
。对于其他错误代码,相应地采取行动。我遇到的问题是当用户单击详细信息页面上的按钮提升时,我在 MemberController 中调用此函数:
如果 api 处理服务返回和错误(400
),因为一些域业务规则是无效的,就像在Edit
行动中一样,我想将错误添加到模型状态并返回相同的视图(这是相同的详细视图),以便显示错误信息并保持当前分页(整体表)状态,否则重定向到详细视图以重新加载更新数据(无需维护表的过滤、搜索和分页状态)。问题是,如果我想View("Details", "Organization", ...)
在出现错误的情况下返回:
- 我需要以
OrganizationDetailsViewModel
某种形式将所有数据作为隐藏输入发布,而不仅仅是一个按钮。然后使用更新的 modelState 将此数据返回到视图
或者
- 仅发布 searchMetadata,如果 api 将返回和
400' requery API for data in
OrganizationDetailsViewModel`,则将其映射到视图模型并返回。
但即使我这样做了,我仍然在提升方法网址中......
控制器重定向方法只允许传递 url 和 routeValues,在查询中传递它真的很奇怪。此外,它还需要为我已经拥有的数据请求 API。我考虑过的其他选项是使用 jquery-ajax 进行调用,但我不确定,因为 MVC 正在通过code
来自 Identity Server 4 的流进行授权,这意味着服务器到服务器的通信。对于使用 ajax 执行的调用,我很可能需要实现另一个implicit
流程。我想出的最后一个选项是将所有OrganizationDetailsViewModel
数据发布到Promote
控制器方法,并在出现错误时将其添加到tempData
然后字典重定向到详细信息视图并从那里读取所需的数据。但从我读过的内容来看,这是非常不可取的,因为它包括会话管理。我现在正在考虑的是使用 ajax 调用成员控制器(本地 URL)而不是 API 中的方法,但我几乎可以肯定它不会保留用户身份,并且对 API 的调用会导致未经授权,因为不会在DelegatingHandler
.
jquery - JQuery ajax - 如何传递具有空值的数组参数
我需要将数组参数传递给我的 ASP.NET 后端。它看起来像这样:
$.ajax({ url: 'test', type: 'POST', data: { test: [1, 2] }})
生成的表单数据为:
test[]=1&test[]=2
.
到目前为止,一切都很好。但是当我尝试null
在数组中传递一个值时会出现问题:
$.ajax({ url: 'test', type: 'POST', data: { test: [1, null] }})
在这种情况下,由于某种原因生成的表单数据如下所示
test[]=1&test[1]=
:
请注意,test
第二段有一个数字索引。这无法在后端正确解析:带有索引的段被忽略,所以我null
在后端没有我的价值。
知道如何使它工作吗?