jquery – 我如何知道我的输入=“文件”是否已选择内容

我有一个简单的输入文件< input type =“file”name =“file”id =“file”>
但是如果输入文件内容,我试图在发布后验证.

我尝试使用$(“#file”).val()但是,控件的dom总是一样的.

解决方法

你是什​​么意思:在帖子后,你的意思是:

– 点击提交按钮,但发布或提交之前?

– 你的意思是提交后,内容到达服务器?

如果是第一种情况,请确保将表单返回false,否则不提交,您可以验证,例如:

<form onsubmit="return false">

或者在提交后调用验证函数,尝试返回一个布尔值到表单中:

<form onsubmit="return validate()">

然后使用Jquery验证你的数据:

function validate(){

  valid = true;

     if($("#file").val() == ''){
         // your validation error action
        valid = false;

     }

    return valid //true or false
}

如果发现错误返回false,如果数据有效返回true.
在理解它的工作原理之后,最终可以用Jquery来完成所有这些:

HTML:

<form id="fileform" action="nextpage.PHP">

JS:

$('#fileform').submit(function(){
     valid = true;

     if($("#file").val() == ''){
        // your error validation action
        valid =  false;
    }

    return valid
});

另外,如果您正在检查要提交的文件类型,可以查看这篇文章jQuery – INPUT type=File,Image FileType Validation options?

如果您想要做的是在提交数据后验证数据,那么您必须以服务器脚本语言(如PHP)对验证进行编码.

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...