Crm 2013 +从整数字段中删除逗号

时间:2015-05-11 07:11:07

标签: javascript dynamics-crm-2011 dynamics-crm dynamics-crm-2013

我在“整数”类型的表单上有一个字段。我想从字段中删除逗号并显示简单的数字。我知道存在一个系统设置来删除逗号,但是它将应用于我想要只执行当前字段的所有字段。 任何支持或不支持的代码都会有所帮助。我也尝试了一些不受支持的代码。 然而,这对我不起作用。

var number = Xrm.Page.data.entity.attributes.get("new_numberfield").getValue();
if(number !=null)
   document.getElementById('new_numberfield').value = number;

任何帮助都将不胜感激。

谢谢,

1 个答案:

答案 0 :(得分:4)

一种可能的支持解决方案是:

  • 在表单
  • 上创建一个新文本字段
  • 隐藏整个数字字段

然后在JavaScript中

  • 在表单加载中从整数字段中获取值
  • 使用整数字段值
  • 更新文本字段

要保持对新文本字段的更改

  • 触发更改文本字段的JavaScript函数
  • 该函数将字符串解析为数字
  • 该功能随后更新整个数字字段

修改

这是帐户实体上员工数字段的示例。

为帐户实体创建新的文本字段

enter image description here

在表单上添加旧的十进制字段(隐藏)和新的文本字段(可见) 在开发过程中,我将使两个字段都可见。 enter image description here

将此on-change函数添加到new_wrapper_numberofemployees:

function UpdateBackingDecimalField (){
    var stringValue = Xrm.Page.getAttribute("new_wrapper_numberofemployees").GetValue();
    var numberValue = parseInt(stringValue);
    if(isNaN(numberValue)) {
        // new_wrapper_numberofemployees did not contain a number
        // show error message for bad user input
    }
    else { // update the real numberofemployees field
        Xrm.Page.getAttribute("numberofemployees").setValue(numberValue);
    }
}

添加此形式加载功能:

function UpdateVisibleField() {
    var decimalValue = Xrm.Page.getAttribute("numberofemployees").getValue();
    Xrm.Page.getAttribute("new_wrapper_numberofemployees").setValue(decimalValue);
}

JavaScript尚未经过测试,肯定需要更多工作;只是为了了解这个想法。