2016-10-13 34 views
0

下面是相關dropzone.js腳本:使用jQuery驗證插件與Dropzone.js - 我想禁用除提交有效的()

$(document).ready(function() { 
    var dropzone3; 
    Dropzone.autoDiscover = false; 
    dropzone3 = new Dropzone('#dropform3', { 
    maxFiles: 6, 
    }); 
    $('#item-submit').click(function(e) { 
    e.preventDefault(); 
    e.stopPropagation(); 
    if (dropzone3.getQueuedFiles().length > 0) { 
     return dropzone3.processQueue(); 
    } 
    else { 
     return $('#dropform3').submit(); 
    } 
    }); 

我的表單使用dropzone.js的圖像。我目前有Jquery驗證插件在文本輸入上正確工作,但是我想要防止輸入中出現任何錯誤時提交表單。

這是我的提交按鈕的代碼如下所示:

<input type="submit" name="commit" value="Upload" id="item-submit" class="btn btn-default photoform"> 

這裏是驗證腳本:

$('form#dropform3').validate({ 
    errorElement: "div", 
    rules: { 
    'photo[title]':    {required: false, maxlength: 30}, 
    'photo[tag_list]':   {required: false, taglength: 20} 
    } 
}); 

我失敗嘗試創建一個if statement使用禁用按鈕:

var isValid = $('form#dropform3').valid(); 
var dropbtn = $('#item-submit') 
if (!isValid) { 
    dropbtn.prop("disabled", true);     
} 

and

var isValid = $('form#dropform3').valid(); 
var dropbtn = $('#item-submit') 
if (!isValid) { 
    dropbtn.css("pointer-event", "none");     
} 

然而,按照this answer - 使用類型=當

「提交」,不需要你的點擊處理程序,因爲點擊會自動插件抓獲。另外,在這種情況下,您可以使用submitHandler選項來包含表單有效時要運行的任何代碼。

我簡要的企圖未能成功移動到$('#item-submit').click(function(e)submitHandler收到一個錯誤,dropzone3是不確定的。我不知道如何組合腳本。

回答

0

貌似我解決了這個移動

if ($('form#dropform3').valid()) { 

爲點擊功能:

$('#item-submit').click(function(e) { 
e.preventDefault(); 
e.stopPropagation(); 
if ($('form#dropform3').valid()) {}); 
} 
相關問題