2017-08-13 134 views
0

嗨,我刚刚为umbraco后台创建了一个简单的新选项,它是一个简单的html页面,它显示一个点击按钮。 Simple formUmbraco中的Jquery AJAX按钮调用BackOffice

此按钮应发送一个ajax调用到UmbracoApi,但请求永远不会到达webapi。在Api代码下面: API Code

Ajax调用是一个简单的jquery Ajax调用,在html按钮事件中单击。

为了完成这个ajax调用,我将非常感谢您为我提供的任何帮助。

+0

显示线了点击用于发送AJAX –

+0

嗨@AlanTsai这是代码的URL你的js代码,这是一个简单的Ajax调用 '$( “#btnGetData”)点击(函数(){ \t $阿贾克斯( “HTTP://本地主机:44302 /一把umbraco/API/stripebackofficeapi/GenerateLockBoxFile”,{ \t \t类型: “GET” , \t \t数据类型: “JSON”, \t \t数据:{日期和时间:$( '#txtDate')VAL()}, \t \t缓存:假的, \t \t成功:功能(数据,状态,头,配置){ \t \t \t如果(数据){ \t \t \t \t警报(! “完成”); \t \t \t} \t \t}, \t \t错误:功能(jqXHR,超时消息){ \t \t \t的console.log( “错误:” +消息); \t \t} \t}); }); ' 现在URL是我的本地主机,但将来会成为Umbraco服务器 – ellerysammy

回答

0

我想侑问题是您所呼叫的方式:

  1. 不知道网址外壳不一样的控制器和行动会导致路由出现故障或没有,但还不如让那么同样
  2. 你动作绑定基本类型,从我的WebAPI的理解 - 基本类型将检查在查询字符串另有明确告诉它看身体 有关更多信息,结账https://docs.microsoft.com/en-us/aspnet/web-api/overview/formats-and-model-binding/parameter-binding-in-aspnet-web-api

所以立足于上述两个声明,试图改变您的来电:

$("#btnGetData").click(function() { 
    $.ajax("http://localhost:44302/Umbraco/Api/StripeBackOfficApi/GenerateLockBoxile?date=" + $('#txtDate').val(), { 
      type: "GET" 
     }, cache: false, success: function(data, status, headers, config) { 
      if (data) { 
       alert("Done!"); 
      } 
     }, error: function(jqXHR, timeout, message) { 
      console.log("Error: " + message); 
     } 
    }); 
});