2012-04-13 9 views
1

Я хочу выполнить простую проверку javascript, где, когда пользователь нажимает кнопку отправки в форме, он проверяет, является ли файл «png» или Тип файла 'gif'. Если это правильный тип файла, отобразите панель загрузки и загрузите форму. Если тип файла неверен, то показано, что тип файла предупреждения n-типа неверен, но не отображает панель загрузки и не загружает форму.Предупреждение не появляется, когда я нажимаю кнопку «Загрузить»

Ниже приведен код, но он не отображает предупреждение, когда я нажимаю кнопку «Загрузить». Что мне нужно сделать, чтобы, когда пользователь нажимает кнопку «Загрузить», если неправильный тип файла появляется, появляется предупреждение, и он не загружает файл, если тип файла верен, он отображает загрузочную панель и загружает файл.

var sourceImageForm; 

var $fileImage = $("<form action='imageupload.php' method='post' enctype='multipart/form-data' target='upload_target' onsubmit='startImageUpload(this);' class='imageuploadform' >" + 
"<label> Image File: <input name='fileImage' type='file' class='fileImage' /></label><br/>" + 
"<input type='submit' name='submitImageBtn' class='sbtnimage' value='Upload' /></label></form>"); 

function startImageUpload(imageuploadform){ 

    $(".imageFile").change(function() { 

    var val = $(this).val(); 

    switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){ 
     case 'gif': case 'jpg': case 'png': 
     return true; 
      break; 
     default: 
      $(this).val(''); 
      alert("not an image"); 
      return false; 
      break; 
    } 
}); 

    $(imageuploadform).find('.imagef1_upload_process').css('visibility','visible'); 
    $(imageuploadform).find('.imagef1_upload_form').css('visibility','hidden'); 
    sourceImageForm = imageuploadform; 

     return true; 
} 
+0

Синтаксис фломастер рассказывает ... Заключительная цитата отсутствует после '' –

+0

Извините, что в моей заявке отсутствует пропущенная цитата, я должен случайно ее удалить, разместив ее в этом вопросе, но отсутствует пропущенная цитата. Извини за это. – user1324106

ответ

0

Вы упускаете закрытие " в третьей строке, что может быть причиной.

+0

Извините, что в моей заявке отсутствует пропущенная цитата, я должен случайно ее удалить, разместив ее в этом вопросе, но отсутствует пропущенная цитата. Извини за это. – user1324106

0

Вы не предотвращаете поведение по умолчанию в форме, поэтому, когда вы отправляете его, оно просто идет, оно не заботится о стороне javascript.

$('form').submit(function(ev) { 
// do your stuff here and return true to submit it or false to stop it 
}) 

Редакцией: К сожалению вы свяжете на подать, но все, что вы делаете, когда подавать в пресс связать элемент изображения на изменения, вы на самом деле не проверять ничего на представить

+0

Неужели я неправильно разместил код где-то тогда или что мне нужно сделать, чтобы он проверял правильность отправки? – user1324106