0

我想根据他的生日计算我的联系人年龄。通过一些搜索,我想出了以下代码:

(将代码添加到 Edit.js)

/*** Function to calculate Age based on birthday field change*/ 

jQuery('[name="birthday"]',form).change(function() {
var dateBirth = Vtiger_Helper_Js.getDateInstance(jQuery('[name="birthday"]',form).val(),jQuery('[name="birthday"]',form).attr("data-date-format"));

jQuery('[name="cf_755"]',form).val( Math.floor((Date.now()-dateBirth) / (31557600000)));

});

它不能按原样工作,除此之外,它只会在更新生日字段时更改联系人的年龄。当任何字段已更新时,如何使此代码工作?

更好的是在联系人页面打开时实时计算联系人的年龄,即详细视图。

任何帮助深表感谢!

4

1 回答 1

0

您需要类似以下代码的内容:

$('form[id="EditView"] input, form[id="EditView"] select').change(function() {
    var dateBirth = Vtiger_Helper_Js.getDateInstance(jQuery('input[name="birthday"]').val(),jQuery('input[name="birthday"]').attr("data-date-format"));
    jQuery('input[name="cf_755"]').val( Math.floor((Date.now()-dateBirth) / (31557600000)));
});

还有一种最简单的方法可以将值设置为 cf_755 输入。使用 Vtiger 表达式通过工作流计算值。您只需要创建一个工作流程并通过 time_diffdays 方法计算年龄。 单击此处检查 vtiger 表达式

于 2019-07-05T08:13:41.263 回答