#javascript #dynamics-crm #crm #microsoft-dynamics
Вопрос:
в форме Dynamics 365 CRM есть поле с флажком opu_paid, если оно снято, я должен отключить все поля в форме в javascript. до сих пор я застрял в своем коде о том, как получить значение из этого поля флажка (является ли оно истинным или ложным), чтобы я мог использовать метод «setDisabled»
Как мне получить значение поля «Флажок»?
var formContext = Context.getFormContext();
var paidCheckbox = formContext.getAttribute("opu_paid").getValue() // this is not working
if(!paidCheckbox)
{
formContext.getControl("firstname").setDisabled(true);
formContext.getControl("lastname").setDisabled(true);
}
else
{
formContext.getControl("firstname").setDisabled(false);
formContext.getControl("lastname").setDisabled(false);
}
Комментарии:
1. почему бы вам не использовать бизнес-правила для решения этой проблемы?
2. также проверьте имя схемы вашего поля, у него нет префикса, может быть, это
new_paid
, например?3. я отредактировал сообщение, и мне нужно научиться делать это в коде; я сделал это в бизнес-правилах, это довольно просто
4. проверьте, нет ли какой-либо ошибки в консоли браузера, также проверьте значение
paidCheckbox
переменной в отладчике браузера
Ответ №1:
Почти уверен, что ваше имя атрибута неверно. Атрибуты будут либо атрибутами OOB, либо должны иметь префикс «что-то».
В остальном то, что у вас есть, правильно. Если вам нужна дополнительная помощь, вам нужно будет предоставить более подробную информацию, например, что возвращает GetValue ()? Как это не работает?
Комментарии:
1. Да, у него есть префикс, но он специально удалил его; подумал, что я бы спросил «в целом»; отредактировал имя в вопросе, и значение get должно возвращать значение true или false, поскольку параметры либо «нет» имеют значение 0, либо «да» имеет значение 1. он должен отключить поля имени и фамилии, если опция «нет», включить в противном случае
2. Так что же это возвращает?