Dynamics 365 Form js控制
//字段:new_formnote var new_formnoteObj = document.querySelector("[name='new_formnote']"); //字段组件 var new_formnoteDiv = new_formnoteObj.closest('div[data-editorblocktype]'); //字段+标题组件 let new_formnote = document.getElementsByName('new_formnote')[0]; //字段 //第一个字段:new_formnote new_formnoteObj.addEventListener('change', function () { //字段new_formnote变化的时候 if (new_formnote && new_formnote.value) { //有值,显示下面的字段: new_formnoteDiv1.style.display = "flex" setSingleRequired(new_formnoteObj1, true); } else { //隐藏: new_formnoteDiv1.style.display = "none" new_formnoteDiv2.style.display = "none" new_formnoteDiv3.style.display = "none" new_formnoteDiv4.style.display = "none" //非必填 setSingleRequired(new_formnoteObj1, false); setSingleRequired(new_formnoteObj2, false); setSingleRequired(new_formnoteObj3, false); setSingleRequired(new_formnoteObj4, false); //清空值 new_formnote1.value = null; new_formnote2.value = null; new_formnote3.value = null; new_formnote4.value = null; } }); //判断下拉的值 let new_option = document.getElementsByName('new_option')[0] if (new_option && (new_option.value == 10 || new_option.value == 20)) { //... } //显示: new_formnoteDiv.style.display = "flex" //隐藏: new_formnoteDiv.style.display = "none" //必填: setSingleRequired(new_formnoteObj,true); //非必填: setSingleRequired(new_formnoteObj, false); //设置是否必填 function setSingleRequired(element, required) { if (required) { element.setAttribute('required', 'required'); const parentDiv = element.closest('div[data-editorblocktype]'); if (parentDiv) parentDiv.setAttribute('data-required', 'required'); } else { element.removeAttribute('required'); const parentDiv = element.closest('div[data-editorblocktype]'); if (parentDiv) parentDiv.removeAttribute('data-required'); } } //截取url中的参数 function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i') var r = window.location.search.substr(1).match(reg) if (r != null) return unescape(r[2]) return null }
多选控制:
let productContextParam = getQueryString('product_context');
let productCheckboxes = document.querySelectorAll('input[name="new_productofinterest"]');
if (productContextParam && productCheckboxes.length > 0) {
let selectedProducts = productContextParam.split(',');
productCheckboxes.forEach(checkbox => {
checkbox.checked = false;
if (selectedProducts.includes(checkbox.value)) {
checkbox.checked = true;
}
});
}
访问Form地址,增加#d365mkt-nocache可以无缓存访问
#d365mkt-nocache
记得收藏并关注,掌握更多相关知识!!!

浙公网安备 33010602011771号