2015-06-29 146 views
3

我不能讓我的生活得到Parsley.js來驗證我的複選框,即使我的代碼看起來就像他們的例子。我的HTML看起來像這樣:爲什麼複選框驗證在Parsley.js中不起作用?

<div class='button-row'> 
    <input data-parsley-mincheck='1' id='add-package-a-pre' name='add-package-alerts' type='checkbox' value='pre'> 
    <label for='add-package-a-pre'> 
    Pakke registrert 
    </label> 
    <input id='add-package-a-sent' name='add-package-alerts' type='checkbox' value='sent'> 
    <label for='add-package-a-sent'> 
    Pakke sendt 
    </label> 
    <input id='add-package-a-ready' name='add-package-alerts' type='checkbox' value='ready'> 
    <label for='add-package-a-ready'> 
    Pakke klar for henting 
    </label> 
    <input id='add-package-a-loaded' name='add-package-alerts' type='checkbox' value='loaded'> 
    <label for='add-package-a-loaded'> 
    Pakke lastet opp for utkjøring 
    </label> 
    <input id='add-package-a-delivered' name='add-package-alerts' type='checkbox' value='delivered'> 
    <label for='add-package-a-delivered'> 
    Pakke leveret 
    </label> 
</div> 

香菜開箱,並阻止我的形式從當我在我的文字輸入一個有一個錯誤提交,但它完全忽略了沒有我的複選框被選中的事實。據我所看到的,我的代碼看起來就像他們所提供的例子:http://parsleyjs.org/doc/examples/simple.html

I have also made a JSFiddle that demonstrates the problem.

任何人都可以看到,爲什麼它不工作?我一直堅持這幾個小時,而且我找不到遇到同樣問題的其他人。

回答

7

事實證明,香菜將總是接受沒有複選框被選中只要required屬性未設置,即使data-parsley-checkmin="1"是。

要闡述:

  • <input type="checkbox" data-parsley-checkmin="1" />
    總是會通過驗證,無論什麼
  • <input type="checkbox" data-parsley-checkmin="2" />
    只會失敗,如果1個複選框被選中
  • <input type="checkbox" data-parsley-checkmin="1" required />
    將無法​​通過驗證的驗證如果沒有選中複選框

換句話說,data-parsley-checkmin="1"從來沒有用。只需將其替換爲required即可。

+1

這是正確的,在文檔中一定要更清楚。 PR歡迎。 –

+1

如果「name」屬性不存在,驗證將通過 –