Javascript 使用regex验证文件

Javascript 使用regex验证文件,javascript,jquery,regex,Javascript,Jquery,Regex,我试图在使用javascript/jquery上传图像文件之前验证它们 以下是我到目前为止的情况: $('#cropimages').click(function(){ i = 1 ; var valid = new RegExp('/^.*\.(jpg|jpeg|png|gif)$/') ; $('input').each(function(){ if($(this).attr('name') == 'file'+i) {

我试图在使用javascript/jquery上传图像文件之前验证它们

以下是我到目前为止的情况:

$('#cropimages').click(function(){
    i = 1 ;
    var valid = new RegExp('/^.*\.(jpg|jpeg|png|gif)$/') ;
    $('input').each(function(){

        if($(this).attr('name') == 'file'+i)
        {
            val = $(this).val() ;

            r = valid.exec(val) ;
            alert(r) ;
            i++ ;
        }
    })
    //$('#topperform').submit()
})
但无论我选择哪种文件,它总是返回
null


我需要对我的
RegExp
做些什么才能使其工作?

使用正则表达式文字:

var valid = /^.*\.(jpg|jpeg|png|gif)$/;
如果确实要使用RegExp constructor,请省略分隔符

var valid = new RegExp('^.*\.(jpg|jpeg|png|gif)$');
相关的


使用正则表达式文字:

var valid = /^.*\.(jpg|jpeg|png|gif)$/;
如果确实要使用RegExp constructor,请省略分隔符

var valid = new RegExp('^.*\.(jpg|jpeg|png|gif)$');
相关的


一件小事;在实例化RegExp时,您不需要
new
关键字:)一件小事;在实例化RegExp:)时,您不需要
new
关键字。顺便说一下,我会使正则表达式不区分大小写
var valid=/^.*\(jpg | jpeg | png | gif)$/I万一你的文件包含像
.JPG
这样的大写扩展名,我会让你的正则表达式不区分大小写
var valid=/^.*\(JPG | jpeg | png | gif)$/I
以防您的文件包含大写扩展名,如
.JPG