如何通过使用变量而不是名称来调用函数?

时间:2017-04-25 17:01:39

标签: javascript php jquery ajax

这是我的代码:



$('.click').on('click', function(){
    $.ajax({
        url :  $(this).siblings('a').attr('href'),
        dataType : 'JSON',
        success : function (tags) {
            $("ul").html(tags.output);
        },
        error : function (jqXHR, textStatus, errorThrown) {
          if ( textStatus === 'timeout') {
            ajax_error_handleign('timeout error', 10, 5000, 'clear_result_box');
          }
        },
        timeout: 4000
    });
})


function ajax_error_handleign(message, position, aliev_time = 5000, func_name = false){
   if ( func_name !== false ){
      window['clear_result_box']();
   }

   $(".error_msg").html(message);
   $(".error").css({top: position + "px"}).fadeIn(200);
   close_error_msg = setTimeout(function(){ $(".error").fadeOut(100); }, aliev_time);
}

function clear_result_box () {
   console.log('result box is clear now')
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class='click'>
    click
</button>
&#13;
&#13;
&#13;

此外,我在PHP脚本中有sleep(5);上面提到的ajax请求。所以始终timeout到达,error将被执行。

问题是什么?我收到此错误:

enter image description here

有人有什么不对吗?

1 个答案:

答案 0 :(得分:0)

而不是:

Host

将函数分配给变量:

Host gitlab gitlab.com

并在以下后使用变量:

function clear_result_box () {
    console.log('result box is clear now')
}