Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 读取数据产生空值_Javascript_Java_Jsp - Fatal编程技术网

Javascript 读取数据产生空值

Javascript 读取数据产生空值,javascript,java,jsp,Javascript,Java,Jsp,我有一个数据表。我想加一张新唱片 但在某种程度上,我不可能考虑我所介绍的内容。 控制台显示null。读取数据产生空值 post.jsp <h3 align="left"> <label id="name_form_genre">Добавить должность</label> </h3> id Должности: <input type="text" id="post_id" style=

我有一个数据表。我想加一张新唱片

但在某种程度上,我不可能考虑我所介绍的内容。 控制台显示null。读取数据产生空值

post.jsp

 <h3 align="left">
        <label id="name_form_genre">Добавить должность</label>
    </h3>

    id Должности:
    <input type="text" id="post_id" style="width: 270px;" maxlength="15" value=""/>

    Название:
    <input type="text" id="post_name" style="width: 270px;" maxlength="15" value=""/>

    <div align="left"> <button onclick="add_post()" id="button_form_post">Добавить</button></div>
PostServlet.java:

function add_post() {

var post_id = document.getElementById("post_id");
var post_name = document.getElementById("post_name");

if(post_id.value.toString().trim()=="" || post_name.value.toString().trim()=="")
{
    alert("Поля не должны быть пустые!")
}else {
    var xhr = new XMLHttpRequest();
    var body = 'action=add' + '&id=' + post_id.value + '&name=' + post_name.value;
    xhr.open("POST", "post", false);
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
    xhr.send(body);
    if (xhr.status != 200)
        alert(xhr.status);
    window.location = "/post";
}}
@WebServlet("/post")
public class PostServlet extends HttpServlet{
private PostService postService = new PostService();
public PostServlet() throws SQLException, ClassNotFoundException { }
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    processRequest(request, response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    request.getRequestDispatcher("post.jsp").forward(request, response);
}
protected void processRequest(HttpServletRequest request, HttpServletResponse response) {
    try {
        PostEntity postEntity = new PostEntity();
        String operation = request.getParameter("action");
        switch (operation) {
            case "add":
                System.out.println("=====================");
                System.out.println("ADD");
                System.out.println("post_id: " + request.getParameter("post_id"));
                System.out.println("post_name: " + request.getParameter("post_name"));

                postEntity.setPost_id(Integer.parseInt(request.getParameter("post_id")));
                postEntity.setPost_name(request.getParameter("post_name"));
                System.out.println("=====================");
                postService.insert(postEntity);
                break;
        }
        request.getRequestDispatcher("post.jsp").forward(request, response);
    } catch (Exception e) {
    e.printStackTrace();
}
}}

有人能帮我找出问题所在吗。提前感谢。

您正在
.js
文件中将请求参数设置为
id
name
,但在java中获取请求参数
post\u id
post\u name
。你能在你的申请中核实一下吗? 错误消息显示
post\u id
post\u name
为空

改用
id
name

postEntity.setPost_id(Integer.parseInt(request.getParameter("id")));
postEntity.setPost_name(request.getParameter("name"));

嗨,基里尔,你能不能也添加你的servlet文件?代码在
window.location=“/post”之前缺少一个右括号。嗨,纳亚!我添加了servlet file.karel的屏幕截图,已编辑。你是说这个吗?不,请看,我添加了servlet代码