欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于Ajax中通过response在后台传递数据问题

程序员文章站 2022-03-21 11:05:31
这是js代码: var system = { gethttprequest: function(url, callback, options) {...

这是js代码:

var system = { 
  gethttprequest: function(url, callback, options) { 
    if (url.length < 0) return; 
    var option = { 
      url: url, 
      type: "get", 
      datatype: "json", 
      cache: false, 
      timeout: 30000, 
      beforesend: function(xhr) { 
      }, 
      complete: function(xhr, textstatus) { 
        xhr.abort(); 
      }, 
      error: function(xmlhttprequest, textstatus, errorthrown) { 
        //alert("网络连接不通,请稍后再试!"); 
      }, 
      success: function(data) { 
        callback(data, options); 
      } 
    }; 
    if ( !! options) { 
      option = $.extend(option, options); 
    } 
    $.ajax(option); 
  } 
}; 

当我想要通过回调函数success获取data时,一开始我是直接在后台return一个json字符串,结果会报异常,没定义方法什么的,后来查了下,需要通过response.getwriter().write()方法写入数据,success中才能获取到数据。后台代码如下:

public string getrejectreason() throws exception{ 
    string rowid = getparameterandput("rowid",null,0).tostring(); 
    string jsondata = ""; 
    if (stringutils.isnotempty(rowid)) { 
      jsondata = newownerinfoservice.getrejectreasonjsondata(rowid); 
    } 
    this.getresponse().setcharacterencoding("utf-8"); 
    this.getresponse().getwriter().write(jsondata); 
    return null; 
} 

总结

以上所述是小编给大家介绍的ajax中通过response在后台传递数据,希望对大家有所帮助