我仍然在處理關於歐芹和半驗證的相同問題。 我有2個類別字段對錶單提交的控制
- 「聯繫信息」 的形式(17場)
- 「公司信息」(5個字段)
的聯繫人信息字段是強制性的。 對於「公司信息字段」,用戶只有在他有公司時才能回答。 因此,名爲「jform [company]」的單選按鈕可以回答「您有公司」的問題。
- 如果答案是「否」 - 我想如果答案是「是」以應用半驗證(只是 聯繫信息字段)
- - 我想申請一個完整的驗證(聯繫人信息字段& &公司信息字段)
這裏是我的代碼: (它的高度在官方文檔的例子啓發:)
$('#adminForm').parsley().subscribe('parsley:form:validate', function (formInstance) {
if (formInstance.isValid('infos'))
{
if ($("input[name='jform[company]']:checked").val() == 1)
{
if (formInstance.isValid('comp'))
{
alert("Parsley - Full validation : OK");
return true;
}
else
{
alert("Parsley - Full validation : Fail");
formInstance.submitEvent.preventDefault();
}
}
else
{
alert("Parsley - Semi validation : OK");
return true;
}
}
else
{
alert("Parsley - Semi validation : Fail");
formInstance.submitEvent.preventDefault();
}
});
我的問題是,表單的提交只出現在完整的驗證。 當我回答沒有問題,我填寫正確的聯繫信息,消息 「歐芹 - 半驗證:確定」顯示,但表格未提交!
你有可能的解釋嗎? 非常感謝
你最後一個問題有什麼問題(http://stackoverflow.com/questions/26002630/conditional-fields-validation)?如果將警報更改爲「返回true」,則會在填寫正確的字段時提交表單。 – 2014-09-25 17:23:15
你好milz。不幸的是提交不起作用。代碼被執行,因爲我到達了這一點(消息顯示),但行返回true不提交數據(沒有發生)。在我以前的文章中,我在jsfiddle上的例子中沒有測試表單的提交,只是塊的條件驗證。我知道這很奇怪......我不明白爲什麼「迴歸真實」;不會觸發表單的提交。 – Lauradev 2014-09-25 18:51:37