Jquery .post不发送数据

时间:2015-03-24 21:39:21

标签: jquery ajax

我正在使用Wordpress心跳,并尝试使用Ajax将一些数据传递到我的网站。我能够在$ _POST中看到该动作,但我的数据不可用。以下.post能够向MyZabbix发送请求,该帖子包含我的操作,然后我的操作正常。但是,我需要访问索引['托管']。为什么下面的.post在发送动作时不会发送我的数据?

     $( document ).on( 'heartbeat-tick', function( e, data ) {
         $.each( data, function( index, value ) {
             $.each( value, function( indexs, values ) {
                 var hostids = indexs['hostid'];
                 $.post( MyZabbix.ajaxurl, {
                     action:'zabbix_ajax_submit',
                     data: indexs['hostid']  },
                     function( api_response ) {
                         console.log( "Data Saved: " + api_response );
                 });
}(jQuery));

1 个答案:

答案 0 :(得分:0)

我决定在我的ajax请求中使用when函数。我遇到的问题是 - 我的ajax请求并没有在我的其余代码执行之前完成。通过将我的代码移动到仅在我的ajax请求成功之后执行的函数,我才能够使所有事情按预期运行。

 var promise = $.ajax({
      type: "POST",
      url: MyZabbix.ajaxurl,
      async: true,
      data: { action:'zabbix_ajax_submit', data:value}
 });
 $.when(promise).done( successFunction );

when函数位于documentation

完成功能位于documentation