如何从我的servlet中获取一个字符串并在我的ajax函数中使用它

时间:2016-01-04 09:57:55

标签: javascript java jquery ajax servlets

我有一个包含字符串的servlet,其中后者是一个包含多个条目的JSON字符串。现在我想通过jQuery访问带有ajax的String。现在,如果我的功能:

function myFunction() {
    $("#myButton").click(function() {
         $.ajax({ 
             url: // servlet,
             type: "GET",
             dataType : "text",
             success: function() // I want to display the string from the servlet,
             error:  // stuff


    // other code

无论如何我怎么能这样做。我还可以在成功部分中放置另一个函数而不是匿名函数吗?

5 个答案:

答案 0 :(得分:0)

  

我想显示来自servlet的字符串

您的success方法有一个参数data

success: function(data){ alert( data ); } 
  

我也可以在成功部分中放置另一个功能而不是   匿名函数?

success: namedFunction, 

function namedFunction(data){ alert(data); }

答案 1 :(得分:0)

您可以传递要在successerror上执行的函数表达式。成功回调的第一个参数是response通过服务器发送。

试试这个:

function successGoesHere(response) {
  console.log(response);
}

function errorGoesHere(err) {
  console.log(err);
}

function myFunction() {
  $("#myButton").click(function() {
    $.ajax({
      url: "YOUR_URL",
      type: "GET",
      dataType: "text",
      success: successGoesHere,
      error: errorGoesHere
    })
  })
}

当您在dataType : "text"中传递ajax config时,回复将始终为纯文字,以防万一您希望它为json,您的回复将为string representation of json因此,您必须使用JSON.parse(response)解析它才能获得JSON object

答案 2 :(得分:0)

这是你要找的吗?

function getString(url, handleResponse, handleFailure) {
    var request = new XMLHttpRequest();
    request.open("GET", url, true);
    request.onload = function () {
        if (request.status >= 200 && request.status < 400) {
            if (handleResponse) {
                handleResponse(request.responseText);
            }
        } else {
            if (handleFailure) {
                handleFailure(request.status);
            }
        }
    };
}

这只是从URL(No JQuery)获取一个字符串

答案 3 :(得分:0)

使用ajax请求成功:function(resp){ 用于解析json和show parsed json的代码 // var json = $ .parseJSON(data); }

You need to look this

答案 4 :(得分:0)

var callback = function(data, textStatus, xhr)
{
    alert(data + "\t" + textStatus);
}

var testman = function(str, cb) {
    var data = 'Input values';
    $.ajax({
        type: 'post',
        url: '',// servlet
        data: data,
    success: cb
    });
}
testman('Hello, Dear', callback);