Конкатенация строк в поле vTiger перед обработчиком сохранения в Javascript (код внутри) - PullRequest
0 голосов
/ 02 апреля 2020

в vtiger 6.5 я пытаюсь добиться этого: в модуле контакта, когда пользователь вводит имя, фамилию и день рождения, код js должен объединить 3 из них и поместить результат в текстовое поле cf_1142.

Я поместил этот код в макеты / vlayout / modules / Contacts / resources / Edit. js

createUniqueId: function (){  
    var firstname = $("input[name='firstname']");
    var lastname = $("input[name='lastname']");
    var birthday = $("input[name='birthday']");
    $(document).on('keyup',"input[name='firstname'], input[name='lastname', input[name='birthday']", function(){
      if (firstname.val() != '' && lastname.val() != ''&& birthday.val() != ''){
        var uniqueid = string.concat(firstname, lastname, birthday);
        $("input[name='cf_1142']").val(uniqueid);
      }
    })
  },      

Затем я добавил в Edit. js в registerBasicEvents:

registerBasicEvents : function(container){
    this._super(container);
    this.registerReferenceSelectionEvent(container);
    this.registerEventForCopyingAddress(container);
    this.registerRecordPreSaveEvent(container);
    this.creaIdentificativo();
}

Я новичок, и я пытался адаптировать другой код, который выполнял математические вычисления, чтобы он работал с конкатенацией строк, но это не так. Может кто-нибудь помочь мне исправить это и сказать мне, что я сделал не так?

Спасибо!

1 Ответ

0 голосов
/ 03 апреля 2020

Почему имя вашей функции не совпадает с именем в функции registerBasicEvents?

createUniqueId: function () {

и

this.creaIdentificativo ()

...