2016-04-24 5 views
0

私が構築しているページでは、ユーザーはシステムに新しい製品を追加することができます。私はこのページでjQueryの問題を抱えています。ここでは写真をアップロードしない限り、ページは表示されません。起こらないと、顧客はアイテムの写真をアップロードせずに進むことができます。商品名、商品アイテムコード、カテゴリのドロップダウン、画像のアップロード用のテキストボックスがあります。画像をアップロードせずに終了ボタンをクリックできるようにするには、コードを入力する必要があります。私のコードは次のとおりです。jQueryのバグ - 画像をアップロードせずに進めることができません

$('#fileupload').fileupload('option', { 
    autoUpload: false, 
    singleFileUploads: false, 
    replaceFileInput: false, 
    // Enable image resizing, except for Android and Opera, 
    // which actually support image resizing, but fail to 
    // send Blob objects via XHR requests: 
    disableImageResize: /Android(?!.*Chrome)|Opera/ 
     .test(window.navigator.userAgent), 
    acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i, 
    previewMaxWidth: 100, 
    previewMaxHeight: 100, 
    previewCrop: true 
}).on('fileuploadadd', function (e, data) { 
     $('#previews').empty(); 
    $("#finish").off('click').on('click', function() { 
     var sku = $("#productSKU").val(); 
     var name = $("#productName").val(); 
     var affiliateId = $("#AffiliateID").val(); 
     var Errors = ""; 
     var category = null; 
     var defaultName = $('#defaultImgName').val(); 

     if ($("#childCategories_" + categoryLevel).length == 0) { 
      category = $("#categoryList").val(); 
     } 
     else if ($("#childCategories_" + categoryLevel).val() == 0) { 
      category = null; 
     } 
     else { 
      category = $("#childCategories_" + categoryLevel).val(); 
     } 

     if (!sku) { 
      Errors += "<li> You can not add a product without an Item Code</li>"; 
     } 
     if (!name) { 
      Errors += "<li> You can not add a product without a Name</li>"; 
     } 
     if (!category) { 
      Errors += "<li> You can not add a product without a Category</li>"; 
     } 

     if (Errors != "") { 
      cua({ text: Errors, type: 'danger' }) 
     } 
     else { 
      data.formData = { productName: name, productSKU: sku, affiliateID: affiliateId, categoryID: category, defaultImgName: defaultName } 
      data.submit(); 
     } 
    }); 
}).on('fileuploadprocessalways', function (e, data) { 
    var index = data.index, 
     file = data.files[index], 
     node = $('#previews'); 

    node.append("<div class=\"img-preview\"></div>"); 
    var innernode = node.find('.img-preview').last(); 
    innernode.append(file.preview); 
    innernode.attr('data-name', file.name); 

    var firstImg = node.find('.img-preview').first(); 
    $('.default-img').removeClass('default-img'); 
    firstImg.addClass('default-img'); 
    $('#defaultImgName').val($('.default-img').data('name')); 

    if (file.error) { 
     node 
      .append('<br>') 
      .append($('<span class="text-danger"></span>').text(file.error)); 
    } 
}).on('fileuploaddone', function (e, data) { 
    if (data.result != false) { 
     cua({ text: 'Successfully added new item', type: 'success' }); 
     closeAddNew(); 
    } 
}); 

クローム開発ツールでデバッグしようとしましたが、この問題を分離するのはまだ難しいです。この問題に関わる助けをいただければ幸いです。

ありがとう、

答えて

0

イメージとその他の入力フィールドの検証のための検証を分離する必要があります。 ご協力ありがとうございます;)

関連する問題