jQuery表单验证没有获取输入名称

时间:2016-07-20 21:09:15

标签: jquery forms validation plugins

我正在使用jQuery form validation插件来验证我的表单。由于某种原因,它没有在我的表格中找到名字,我无法弄清楚原因。当我尝试验证JS中的代码时,我 我无法引用输入元素。这是代码和正在发生的截图。有什么想法吗?

enter image description here

<form id="submit-form">
  <label for="app-name-form">
    <input name="app-name-form" type="text" id="app-name-form"/>
    <div class="label-text">App Name</div>
  </label>

  <label for="team-name-form">
    <input type="text" id="team-name-form" name="team-name-form"/>
    <div class="label-text">Team</div>
  </label>

    <label>
          <input type="submit" class="btn" value="Submit" name="saveForm" id="saveForm"/>
    </label>

</form>


<script>
    $(document).ready(function(){
    $("#submit-form").validate({
        rules: {
            app-name-form: "required"
        },
        messages: {
            app-name-form: {
                required: "Enter name pls"
            }
        }
    });
    });

    $('#saveForm').click(function(e) {

    });
</script>

2 个答案:

答案 0 :(得分:0)

破折号在javascript变量名称中不合法。解释器不会正确解析它们。因此,你必须解释翻译。

做类似的事情:

NAME = awverify.subdomain 
VALUE = awverify.your-website.azurewebsites.net

而不是原文(不带引号):

rules: {
    "app-name-form": "required"
}

答案 1 :(得分:0)

您不能在javascript变量的名称中使用减号,因为它是Math subtraction operator,要使其工作只需将ID放在''之间。

 $(document).ready(function(){
    $("#submit-form").validate({
        rules: {
            'app-name-form': "required"
        },
        messages: {
            'app-name-form': {
                required: "Enter name pls"
            }
        }
    });
    });

    $('#saveForm').click(function(e) {

    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.15.0/jquery.validate.js"></script>
<form id="submit-form">
  <label for="app-name-form">
    <input name="app-name-form" type="text" id="app-name-form"/>
    <div class="label-text">App Name</div>
  </label>

  <label for="team-name-form">
    <input type="text" id="team-name-form" name="team-name-form"/>
    <div class="label-text">Team</div>
  </label>

    <label>
          <input type="submit" class="btn" value="Submit" name="saveForm" id="saveForm"/>
    </label>

</form>