如何使用HTML和jQuery进行表单验证而无需重定向到另一个页面?

时间:2017-10-22 19:54:52

标签: php jquery html

我编写了一个HTML表单和脚本来验证表单。问题在于,每当我提交表单时,我都会被重定向到一个页面,告诉我"找不到您的文件"。

我是否有特定的方法来调用脚本?或者我可以强制它在没有重定向的情况下运行吗?

<form id="bioform" action="/action_page.php">
  <label>Biography</label><br>
  <textarea placeholder="Enter bio here" name="bio" rows="10" cols="50"></textarea><br><br>
  <label>Update Biography Picture</label><br><br>
  <input type="file" name="bioimage"><br><br>
  <button type="submit" onclick="function()">Update</button><br>
</form>

<script>
  $(document).ready(function () {
    $('#bioform').validate({
        rules: {
          bio {
            required: true,
            minlength: 5,
          },
        }
        messages: {
          bio {
            required: 'Please enter a biography.',
            minlength: 'Please enter a valid biography.',
          },
        }
        });
  });
</script>

3 个答案:

答案 0 :(得分:0)

添加enctype =“multipart / form-data”以形成标记

    <form id="bioform" action="/action_page.php" enctype="multipart/form-data">
     <label>Biography</label><br>
     <textarea placeholder="Enter bio here" name="bio" rows="10" cols="50">
     </textarea><br><br>
     <label>Update Biography Picture</label><br><br>
     <input type="file" name="bioimage"><br><br>
     <button type="submit" onclick="function()">Update</button><br>
    </form>

答案 1 :(得分:0)

指定发送到必要的位置时是正斜杠吗?例如:

<form id="bioform" action="/action_page.php">

应替换为:

<form id="bioform" action="action_page.php">

答案 2 :(得分:0)

由于您正在使用jQuery,请尝试使用:

e.preventDefault()

  

e.preventDefault()方法停止了默认操作   发生的因素。例如:阻止提交按钮   提交表格。阻止链接跟踪URL。

此外,由于您正在处理文件上传,因此您需要在method标记中添加<form>属性值POST以及enctype="multipart/form-data"

转到这个小提琴并检查它是否适合您:https://jsfiddle.net/z0db4vq0/1/