2012-04-04 50 views
1

这是验证码不工作直接重定向到行动路径

<form action="http://localhost/own/import.php" method="post" enctype="multipart/form-data" name="form1"> 

     <input type="file" name="xmlfile" id="file1"> 

     <input type="file" name="uploaded_image" id="file2"> 

    <input type="submit" id="submit" name="Submit" value="Submit" style="margin:0 0 0 150px;"> 

HTML这是Java脚本文件

function getExt(filename) { 
    var dot_pos = filename.lastIndexOf("."); 
    if (dot_pos == -1) { 
    return ""; 
    } 
    return filename.substr(dot_pos + 1).toLowerCase(); 
} 

function validate_ext() { 
var filename = document.getElementById("file1").value; 
var filename2 = document.getElementById("file2").value; 
var ext = getExt(filename); 
var ext2 = getExt(filename2); 

if (filename != "") { 
    if (!(ext == "xml")) { 
     alert("Please upload XML file format only"); 
     return false; 
    } 
} 

if (filename2 != "") { 
    if (!((ext2 == "jpg") || (ext2 == "jpeg") || (ext2 == "png"))) { 
      alert("Please upload jpg, jpeg, png file format only"); 
      return false; 
     } 
    } 

    return true; 
    } 

$(document).ready(function() { 
    $('#submit').click(validate_ext); 
    alert("test"); 
}); 

我也赞同此代码也http://jsfiddle.net/vikastyagi87/XugLp/18/

+0

...问题是/? – DaveRandom 2012-04-04 12:18:39

+0

你可以调用validate_ext()吗? – Dhruvisha 2012-04-04 12:19:51

+0

没有检查验证表单提交此动作http://localhost/own/import.php – 2012-04-04 12:20:13

回答

0

我做了错误的下面一行

if (filename != "") { 
if (!(ext == "xml")) { 
    alert("Please upload XML file format only"); 
    return false; 
    } 
} 

if (filename2 != "") { 
if (!((ext2 == "jpg") || (ext2 == "jpeg") || (ext2 == "png"))) { 
     alert("Please upload jpg, jpeg, png file format only"); 
     return false; 
    } 
} 

和,但现在改变后它的工作

if (!(ext == "xml")) { 
    alert("Please upload XML file format only"); 
    return false; 
} 


if (!((ext2 == "jpg") || (ext2 == "jpeg") || (ext2 == "png"))) { 
     alert("Please upload jpg, jpeg, png file format only"); 
     return false; 
    } 

这里是工作的代码http://jsfiddle.net/vikastyagi87/XugLp/29/

1

文件名可以是不确定的 你应该尝试:

if (filename != undefined && filename.length > 0) 

你为得到#

$('#submit').click(validate_ext); 

你为什么写

if (!(ext == "xml")) 

而不是

if (ext.toUpperCase() != "XML") 

!=不是!(==)简单 和 你的文件扩展名可以包含大写字母