代码之家  ›  专栏  ›  技术社区  ›  uzay95

如何将$.Ajax对象传递给另一个函数?

  •  0
  • uzay95  · 技术社区  · 15 年前

    此函数将在一般情况下使用Ajax Calss:

    function f_AjaxFunction(_param) {
        var objectWillReturn;
        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: 'WS/wsGenral.asmx/f_QueryAndGetResultAsJson',
            data: "{_sParam:'" + _param + "'}",
            dataType: "json",
            success: function(data) {
                var txt = "";
                try {
                    objectWillReturn = data;
                }
                catch (err) {
                    alert(err.description);
                }
            }
        });
        return objectWillReturn ;
    }
    

    此函数正在调用上面的另一个函数:

        function f_HavaDurumu(_paramm) {
            var obj;
            obj = f_AjaxFunction(_paramm);
            $("#spanShow").html(obj.d);
        }
    
    2 回复  |  直到 15 年前
        1
  •  3
  •   Doug Neiner    15 年前

    function f_AjaxFunction(_param, callback) {
      $.ajax({
          type: "POST",
          contentType: "application/json; charset=utf-8",
          url: 'WS/wsGenral.asmx/f_QueryAndGetResultAsJson',
          data: "{_sParam:'" + _param + "'}",
          dataType: "json",
          success: function(data) {
              var txt = "";
              try {
                  if($.isFunction( callback(data) )){
                    callback(data);
                  }
              }
              catch (err) {
                  alert(err.description);
              }
          }
      });
    }
    
    function f_HavaDurumu(_paramm) {
        f_AjaxFunction(_paramm, function(data){
          $("#spanShow").html(data.d);  
        });
    }
    

    function get_ajax(){
        var ran = false;
        $.ajax({ 'url':'/some/url', success: function(data){
            ran = true;
        });
        return ran;
    }
    
    alert(get_ajax()); // alerts "false"
    

    1. run false

        2
  •  0
  •   Dark Falcon    15 年前