1

これは html から

   <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;">

これは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/

</p>

4

2 に答える 2

1

ファイル名は未定義にすることができます。

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

あなたが忘れてしまった #

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

なんで書いたの

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

それ以外の

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

!= !(==) よりも単純で、ファイル名拡張子に大文字を含めることができます

于 2012-04-04T12:41:28.613 に答える
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/

于 2012-04-04T12:32:41.970 に答える