2013-05-07 2 views
2

Здесь я пишу ответ на объект Ajax ответКак получить ответное сообщение с данными AJAX

protected void writeAjaxResponse(HttpServletRequest req 
           ,HttpServletResponse resp,String result){ 
     PrintWriter writer = null; 
     try { 
      writer = resp.getWriter(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     writer.println(result); 
     return; 

    } 

А позже я назвал

writeAjaxResponse(req, resp, "<p style=color:red>Error occured recording 
                  your feedback!</p>"); 

В JQuery

$.ajax({ 
        type: 'POST', 
        url: 'savefeedback', 
        data: 'feedbacker='+feedbacker+'feedbackeremail= 
        '+feedbackeremail+'feedbacker='+feedbackermsg, 
        success:function(data){ 
        alert(data); //here is the pin point 


        } 
       }); 

Но в боевой готовности Я получаю

[object XMLDocument] 

EDIT:

Вот мой сервлет doPost() метод

@Override 
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) 
      throws ServletException, IOException { 

     String feedbacker = req.getParameter("feedbacker"); 
     String feedbackeremail = req.getParameter("feedbackeremail"); 
     String feedbackermsg = req.getParameter("feedbackermsg"); 

     boolean saveFeedback = MailSenderServlet. 
      saveFeedback(req, resp, feedbackeremail, "", 
        feedbackermsg, feedbacker, feedbackeremail); 
     if(saveFeedback){ 
      writeAjaxResponse(req, resp, "Feedback received succesfully!"); 
     }else{ 
      writeAjaxResponse(req, resp, "Error occured !"); 
     } 

    } 

Но я жду мое ответное сообщение.

Пожалуйста, дайте мне знать, если я что-то пропустил.

Пожалуйста, помогите !!!!

+0

Если вы используете Chrome, вы можете использовать 'console.log (data)' и проверить консоль, чтобы узнать, как выглядит ваш объект ответа. – Uooo

+0

dataType: 'html' // или json или что-нибудь еще? в ajax! – unkn0wn

+0

Я видел пустую консоль в firebug и chrome :( –

ответ

0

Через 30 мин Reserach

Я нашел MIME type отсутствует, и изменил мой метод

protected void writeAjaxResponse(HttpServletRequest req 
           ,HttpServletResponse resp,String result){ 
     resp.setContentType("text/html;charset=UTF-8"); 
     PrintWriter writer = null; 
     try { 
      writer = resp.getWriter(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     writer.println(result); 
     return; 

    } 

Благодаря @Noob @ w4rumy @ user2207792 для быстрой поддержки.

+0

Рад, что мы сможем помочь ypu :) – Uooo

+1

Вы можете отметить это как принятое, если оно сработает. – zmanc

+0

@zmanc Да, просто отметино :) –

Смежные вопросы