I am trying to display the result of addition of 2 numbers on the same web page without reloading. I tried using jquery ajax but when the result is displayed I am losing the existing content of the page. How to modify the code so that I get the result along with all the existing content of the page?
Addition.jsp
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
var form = $('#ajaxform');
form.submit(function () {
$.ajax({
type: form.attr('method'),
url: form.attr('action'),
data: form.serialize(),
success: function (data) {
var result=data;
$('#content').html(result);
}
});
return false;
}); </script>
<form id='ajaxform' name='ajaxform' action='Addition' method='post'>
Enter First Number: <input type='text' id='firstnum' name='firstnum' size='30' required/><br/>
Enter Second Number<input type='text' id='secondnum' name='secondnum' size='30'required/><br/>
<input type='Submit' value="Add"/> <br><br>
<div id='content'>
</div><br><br>
</form>
Addition.java
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
/**
* Servlet implementation class Addition
*/
@WebServlet("/Addition")
public class Addition extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String fnum= request.getParameter("firstnum");
int intfnum = Integer.parseInt(fnum);
String snum= request.getParameter("secondnum");
int intsnum = Integer.parseInt(snum);
int intres = intfnum + intsnum;
String res = Integer.toString(intres);
out.println("<br/><br/>"+fnum+" + "+snum+" = "+res);
}
}
Original Page:
Page After getting result: