【问题标题】:how to pass a javascript variable to a java servlet? [duplicate]如何将 javascript 变量传递给 java servlet? [复制]
【发布时间】:2015-03-21 22:23:26
【问题描述】:

我想将一个 javascript 变量传递给一个 java servlet。我正在开发一个网络应用程序。这是我的html代码:

<p id="test">Some text</p>

这就是我在 javascript 文件中写的内容:

var myVar = document.getElementById('test').innerText;

$.ajax({
    url: 'Test',
    data: {
        myPostVar: myVar
    },
    type: 'POST'
});

然后在 servlet 中(在 doGet 中):

String result = request.getParameter("myPostVar");
System.out.print(result);

如果我运行 Test.java 进行测试,它会给我“null”。我google了太多,但找不到任何解决方案。

【问题讨论】:

  • “如果我运行 Test.java 进行测试”是什么意思?你是如何运行它的?
  • 如果您将 JavaScript 变量传递给服务器,您的示例应该可以工作。
  • 有用的提示,我建议使用textContent 而不是innerText,因为前者符合 W3C 并且得到更普遍的支持。

标签: java javascript ajax jsp servlets


【解决方案1】:

问题是您的 ajax 中有 post 方法,而您正试图在 servlet 的 doGet() 中获取它。

在你的 ajax 中使用doPost 或将方法更改为Get

【讨论】:

    【解决方案2】:

    试试这个:

    public void doPost(HttpServletRequest request, HttpServletResponse response) 
       throws ServletException, IOException
    {
        String myPostVar = request.getParameter("myPostVar");
        // ...
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      • 1970-01-01
      • 2012-03-18
      • 1970-01-01
      • 2014-04-15
      相关资源
      最近更新 更多