2014-02-12 48 views
1

我有一個自定義多字段組件,最大限制爲5個元素應用於「添加項目」按鈕。設置自定義多字段組件的最小限制

我需要添加一個類似的偵聽器邏輯到對話框的「確定」按鈕,以檢查是否添加了最小數量的項目(3)。

這怎麼能實現?我沒有找到任何示例代碼來將偵聽器代碼添加到按鈕中。

+0

從我讀,我明白你設法做一個按鈕,但你不能拉出相同的東西換另一個按鈕。你可以說得更詳細點嗎?像包含一段代碼來說明你的問題? – rixo

回答

1

我已經在對話框的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; 
    } 
} 
+0

你是如何獲得多字段的項目數量的? (是對js代碼註釋的部分) –