我有一个在 .NET Framework 4.7 上的 Azure 上运行的网站。在那个网站上,我有一个表单,当填写并提交时,有一个使用 JQuery 和 AJAX 的脚本,它从表单中获取数据并将其发送到我们的自定义 API。我在表单中添加了一个新字段。现在,当我单击提交按钮时,脚本会将其发送到我们的 API。但是,该新字段始终为空。但是当我在 F12 中手动调用脚本时,它会正确获取数据,并且我们的 API 会按预期获取新字段的值。但是当我通过按钮触发它时,它没有。我已经检查过我在 Azure 和 F12 上使用的是完全相同的代码。我已将 set dynamic caching 更改为 0 并重新启动网站,但没有解决问题。WEBSITE_RUN_FROM_PACKAGE 或 WEBSITE_NODE_DEFAULT VERSION 是否以任何方式影响它?还是 js 引用了不同的文件(缩小或其他)?我相信这个问题与 JS 没有让我进入新领域有关,但我不确定为什么当我可以在 F12 中做得很好时它不会。我也在使用 Umbraco API,但我怀疑这是 API 可以正确接收数据的问题。 var model = { FirstName: $("#member-register #user_FirstName").val(), LastName: $("#member-register #user_LastName").val(), PostCode: $("#member-register #user_PostCode").val() }; $.ajax({ url: "/Umbraco/Api/Member/RegisterMember", method: "POST", dataType: 'json', contentType: 'application/json; charset=utf-8', data: JSON.stringify(model), success: function (response) { $("#register").modal('hide'); if (response.Success) { // Clear the form fields otherwise it will be visible when register is clicked again. $("#member-register #user_FirstName").val(""); $("#member-register #user_LastName").val(""); $("#member-register #user_PostCode").val(""); } else { $("#registerFailure").modal('show'); } }, error: function (response) { $("#register").modal('hide'); $("#registerFailure").modal('show'); } })
1 回答
![?](http://img1.sycdn.imooc.com/545847d40001cbef02200220-100-100.jpg)
小怪兽爱吃肉
TA贡献1852条经验 获得超1个赞
原来我们正在使用客户端依赖框架(https://github.com/Shandem/ClientDependency)。Azure 上引用的 JS 是旧的,我们必须更新 ClientDependency.config 中的版本,以便它重新打包并使用最新版本。
<clientDependency version="20191028" fileDependencyExtensions=".js,.css" loggerType="Umbraco.Web.UI.CdfLogger, umbraco">
添加回答
举报
0/150
提交
取消