Javascript 带有Servlet参数的AJAX使用为空
我正在尝试从文本区域中移交文本。在几个操作之后,我想返回结果并在另一个文本区域打印结果 第一个my index.jsp:第一个textarea代码编辑器具有文本。单击按钮分析按钮后,第二个文本区域注释框应填充Javascript 带有Servlet参数的AJAX使用为空,javascript,jquery,ajax,jsp,servlets,Javascript,Jquery,Ajax,Jsp,Servlets,我正在尝试从文本区域中移交文本。在几个操作之后,我想返回结果并在另一个文本区域打印结果 第一个my index.jsp:第一个textarea代码编辑器具有文本。单击按钮分析按钮后,第二个文本区域注释框应填充 <div class="form-group"> <label for="codeEditor" style="margin-top: 15px;">Code:</label> <textarea name="codeEditor"
<div class="form-group">
<label for="codeEditor" style="margin-top: 15px;">Code:</label>
<textarea name="codeEditor" class="form-control" id="codeEditor" rows="15" style="resize: none;"></textarea>
</div>
<button id="analysisButton" class="btn btn-default btn-block" style="margin-top: 10px;">Start analysis</button>
<div class="form-group">
<label for="comment" style="margin-top: 15px;">Comment:</label>
<textarea class="form-control" id="commentBox" style="resize: none;height:330px;"></textarea>
</div>
至少在我的servlet中,我调用了我的bean
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOException {
MainVisitor mainVisitor = new MainVisitor();
request.setAttribute("mainVisitor", mainVisitor);
mainVisitor.setSql(request.getParameter("codeEditor"));
String result = mainVisitor.getResult();
resp.setContentType("text/html");
resp.setCharacterEncoding("UTF-8");
resp.getWriter().write(result);
}
当我试图在MainVisitor中设置变量sql时,我得到一个NullPointerException
编辑:
我想我的问题是我没有阅读codeEditor的内容
我现在添加了var sql=$codeditor.val;到我的JS,但我不知道如何继续你需要一个包装你的textarea codeEditor的表单。如果你能提供完整的错误日志,那就太好了。。。 但我认为你的问题只是时间问题。请不要忘记AJAX代表异步JavaScript和XML 理解这一点很重要,因为在异步方案中,下一组命令/行已经执行,即使您仍在等待返回。您应该考虑回调函数。您应该将所有您认为应该等待某个实体恢复的指令放在处理之前
如果您有多余的时间,您可能需要阅读。尝试实际发送数据
$.get("AnalysisServlet", {codeEditor: $("#codeEditor").val()}, function(responseText){
$("#commentBox").text(responseText);
});
不会改变任何东西:/看起来不错。我不再得到异常,但值为空->空Stringtry{codeEditor:'select*from world'}作为数据参数,以查看是否得到任何东西这是一件好事,谢谢。这是我的第二个问题,因为我的文本区域也是异步填充的。
$.get("AnalysisServlet", {codeEditor: $("#codeEditor").val()}, function(responseText){
$("#commentBox").text(responseText);
});