![](/img/trans.png)
[英]How to add a java script handler for button click event in odoo 10?
[英]How to call java script on button click event which handles event to add new row?
我有一個按鈕,它在按鈕單擊事件時在網格視圖中添加新行。 行包含兩個文本框和兩個下拉列表。 但是在添加新行之前,我想檢查第一行中的所有控件是否已填充。 因此,我想在按鈕單擊事件上調用Java腳本。 那么,如何在已處理網格視圖中的事件新行的按鈕上調用Java腳本呢?
您可以定義一個javascript函數,該函數將檢查是否所有控件都已填充,然后滿足添加新行的要求。
例如:
function example()
{
if(controls filled)
add a new row;
}
然后
<button type="button" onclick="example()">Click Me!</button>
解決方案是將呼叫鏈接起來。 有兩種方法可以做到這一點:
您可以在函數定義中使用按鈕的onclick
屬性:
function chainOnClick(button, func) { var origFunc = button.onclick; var tmp = function(e) { if(func(e)) { return origFunc(e); } return false; } button.onclick = tmp; }
請注意,如果沒有安裝onclick
,我發現這是不可靠的; 由於某種原因,該模式不適用於瀏覽器的默認“ onclick”處理程序。
您可以將處理單擊的代碼移到一個函數中(您可能已經擁有)。 現在,您編寫一個驗證函數並安裝此新的單擊處理程序:
function validatedOnClick(e) { if(validateLastRow(e)) { return originalClickHandler(e); } return false; }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.