我有一個自定義多字段組件,最大限制爲5個元素應用於「添加項目」按鈕。設置自定義多字段組件的最小限制
我需要添加一個類似的偵聽器邏輯到對話框的「確定」按鈕,以檢查是否添加了最小數量的項目(3)。
這怎麼能實現?我沒有找到任何示例代碼來將偵聽器代碼添加到按鈕中。
我有一個自定義多字段組件,最大限制爲5個元素應用於「添加項目」按鈕。設置自定義多字段組件的最小限制
我需要添加一個類似的偵聽器邏輯到對話框的「確定」按鈕,以檢查是否添加了最小數量的項目(3)。
這怎麼能實現?我沒有找到任何示例代碼來將偵聽器代碼添加到按鈕中。
我已經在對話框的beforesubmit事件上使用偵聽器完成了同樣的事情(請參閱提交CQDialog之前在http://dev.day.com/docs/en/cq/current/widgets-api/index.html - 搜索「對話框」):包括通過客戶端庫頁面上
<listeners
jcr:primaryType="nt:unstructured"
beforesubmit="function(dialog){return myNamespace.myCustomFunction(dialog);}"/>
然後自定義JavaScript函數,可能是這樣的:
myNamespace = {};
myNamespace.myCustomFunction = function (dialog) {
var isValid = function() {
var valStatus = true;
... custom JavaScript/jQuery to check if 3 items exist ...
return valStatus;
};
if (!isValid()) {
CQ.Ext.Msg.show({title: 'Validation Error', msg: 'Must contain at least 3 items!', buttons: CQ.Ext.MessageBox.OK, icon: CQ.Ext.MessageBox.ERROR});
return false;
} else {
return true;
}
}
你是如何獲得多字段的項目數量的? (是對js代碼註釋的部分) –
從我讀,我明白你設法做一個按鈕,但你不能拉出相同的東西換另一個按鈕。你可以說得更詳細點嗎?像包含一段代碼來說明你的問題? – rixo