У меня есть поле «Дата рождения» и поле возраста в форме CRM. Когда запись сохраняется, возраст рассчитывается, и если возраст меньше 18, возрастное поле должно быть красным.изменить цвет поля на основе значения crm 2011
Когда я сохраняю форму, поле становится красным на секунду, а затем возвращается к нормальному состоянию. Мой веб-ресурс использует событие OnSave формы. Когда я использую код цвета изменения в событии ONChange поля Age, мне нужно дважды сохранить форму, чтобы показать, что она становится красной.
Как избавиться от этого сохранения формы дважды? Вот мой код:
function setAge()
{
var DOB = Xrm.Page.getAttribute("inmate_dob").getValue();
var Today = Xrm.Page.getAttribute("inmate_bookingdate").getValue();
Today.setHours(0, 0, 0, 0);
var db = 0;
if(DOB > Today)
{
alert("Please Enter Genuine BirthDate !!!");
Xrm.Page.getAttribute("inmate_dob").setValue(null);
}
else
{
db = Today.getFullYear() - DOB.getFullYear();
var x = Today.getDate() ;
var y = DOB.getDate() ;
var a = Today.getMonth() + 1;
var b = DOB.getMonth() + 1;
if((a < b) || (a==b & x < y))
db=db - 1;
}
var result = Xrm.Page.getAttribute("inmate_age").setValue(db);
if (db <18)
{
document.getElementById("inmate_age").style.backgroundColor = 'red';
document.getElementById("inmate_age_c").style.backgroundColor = 'red';
}
}
}
Я также попытался использовать последнее условие IF отдельно в событии OnChange поля Age. Это побуждает меня сохранять запись дважды.
Может найти [JQuery плагин часы] (https://github.com/darcyclarke/jQuery-Watch-Plugin) полезно; он должен позволить вам смотреть, где меняется фоновый цвет. Конечно, потребуется jquery – amdixon
Я точно знаю, когда он меняется. – hkhan
если есть? мог бы написать больше кода .. – amdixon