Java 如何使用$.ajaxget将整数作为参数发送到servlet?

Java 如何使用$.ajaxget将整数作为参数发送到servlet?,java,jquery,ajax,servlets,Java,Jquery,Ajax,Servlets,我需要使用java从web应用程序的模型项目中获取一个属性,但我还需要发送和整数作为参数。我阅读了jQueryAPI文档,但是我对AJAX和JQuery非常陌生,我仍然觉得很难理解 这是我的代码: $(document).ready(function () { // Locate HTML DOM element with ID "somebutton" and assign the following function to its "click" event... $.get('Se

我需要使用java从web应用程序的模型项目中获取一个属性,但我还需要发送和整数作为参数。我阅读了jQueryAPI文档,但是我对AJAX和JQuery非常陌生,我仍然觉得很难理解

这是我的代码:

$(document).ready(function () {
// Locate HTML DOM element with ID "somebutton" and assign the following function to its "click" event...
    $.get('ServletControlB', function (responseText) { // Execute Ajax GET request on URL of "someservlet" and execute the following function with Ajax response text...
        $('#divnombre').text(responseText);         // Locate HTML DOM element with ID "somediv" and set its text content with the response text.
    });
});
这是我的ServletControlB doGet函数:

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
    int x; // x = parameter recieved from AJAX
    //data is an instance from the Model class
    String text = data.getNews().getNewsInPosition(x).getTitle(); //I send correct postition to my ArrayList

    response.setContentType("text/html");  // Set content type of the response so that jQuery knows what it can expect.
    response.setCharacterEncoding("UTF-8"); 
    response.getWriter().write(text);
}

我怎样才能解决这个问题?有更好的方法解决这个问题吗?

您可以将作为字符串接收的请求参数解析为整数

String x = request.getParameter("yourParameterName");   //get the parameter as String
int x1 = Integer.parseInt(x); //set the parameter here 

尝试使用类似的
数据对象


当您从jquery发送GET请求时,请在URL中追加查询参数:

 $.get('ServletControlB?yourparam=paramValue', function (responseText) 
您可以在servlet doGet中检索,如下所述:

 String yourParamValue = request.getParameter("yourparam");   
在控制器中,执行以下操作

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
    int x = request.getParameter("x").toString() ; 
    //data is an instance from the Model class
    String text = data.getNews().getNewsInPosition(x).getTitle(); //I send correct postition to my ArrayList

    response.setContentType("text/html");  // Set content type of the response so that jQuery knows what it can expect.
    response.setCharacterEncoding("UTF-8"); 
    response.getWriter().write(text);
}

我想你将不得不改变你的前端如下

$.get('ServletControlB',{ param: '1' }, function (responseText) { 
        $('#divnombre').text(responseText);        
    });
$(document).ready(function () {
// Locate HTML DOM element with ID "somebutton" and assign the following function to its "click" event...
    $.get('ServletControlB?x=' + valueOfX, function (responseText) { // Execute Ajax GET request on URL of "someservlet" and execute the following function with Ajax response text...
        $('#divnombre').text(responseText);         // Locate HTML DOM element with ID "somediv" and set its text content with the response text.
    });
});
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
    int x = request.getParameter("x").toString() ; 
    //data is an instance from the Model class
    String text = data.getNews().getNewsInPosition(x).getTitle(); //I send correct postition to my ArrayList

    response.setContentType("text/html");  // Set content type of the response so that jQuery knows what it can expect.
    response.setCharacterEncoding("UTF-8"); 
    response.getWriter().write(text);
}
$.get('ServletControlB',{ param: '1' }, function (responseText) { 
        $('#divnombre').text(responseText);        
    });