[使用Java servlet的多行输入表单验证不起作用。 Ajax不显示错误

问题描述 投票:0回答:1

Ajax无法正常工作。这是我的表格。 ajax无法验证我的服务器端代码。按照下面的代码,它没有显示错误。

<form id="postMveForm" action="movieDetails">

<input type="text" name="mvetitle" id="mveTitleId"><br/>
<div id="errormvetitle"></div><br/>

<textarea name="mveDescription" id="mveDescrId" rows="10" cols="50"></textarea><br/>
<div id="errormveDescr"></div><br/>

我的Ajax验证无效。如果用户将焦点放在该字段并将其留为空白字段,则需要在文本字段下方显示错误。当我聚焦文本字段并将其留空时,没有错误显示。 ajax无法正常工作。

<script>

    $(document).ready(function() {
        $('#mveTitleId').blur(function() {
            $.ajax({
                url : 'movieDetails',
                data : {
                    mvetitle : $('#mveTitleId').val()
                },
                success : function(responseText) {
                    $('#errormvetitle').text(responseText);
                }
            });
        });


        $('#mveDescrId').blur(function() {
            $.ajax({
                url : 'movieDetails',
                data : {
                    mveDescription : $('#mveDescrId').val()
                },
                success : function(responseText) {
                    $('#errormveDescr').text(responseText);
                }
            });
        });     

    });    
    </script>

这是movieDetails servlet类。

      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

         {

           String mveTitle = request.getParameter("mvetitle");
            String mveDescrptn = request.getParameter("mveDescription");

        if(mveTitle.length()==0)    

                {
                    String mveTitleError = "Error movie Title field is Empty";

                    response.setContentType("text/plain");
                     response.setCharacterEncoding("UTF-8");
                    response.getWriter().write(mveTitleError);           

                }                                     
                    if(mveDescrptn.length()==0)
                  {
                    String mveDescrptnError = "Error movie Description is empty";

                    response.setContentType("text/plain");
                     response.setCharacterEncoding("UTF-8");
                    response.getWriter().write(mveDescrptnError);
                  }

              else {
              response.getWriter().append("success ").append(request.getContextPath());
                   }
            }

javascript java jquery html servlets
1个回答
0
投票

请检查是否为空。if(mveTitle == null)而不是if(mveTitle.length()== 0)和if(mveDescrptn == null)而不是if(mveDescrptn.length()== 0)

© www.soinside.com 2019 - 2024. All rights reserved.