jquery - jqGrid tableToGrid 格式化电话号码列

标签 jquery jqgrid-asp.net

我需要找到一种方法来获取 jquery 的 tableToGrid 调用的某些列来格式化我的几个单元格。我知道您可以在 colModel 中放置一个格式化程序,它将为您格式化该列。我想知道是否有一个标准的电话号码格式化程序,或者我是否会被迫编写一个?感谢您的投入。

最佳答案

我不确定您想如何格式化您的电话号码,但这是我在项目中使用的一些代码。如果取消注释正确的行,您可以在 (xxx)xxx-xxxxxxx-xxx-xxxx

之间切换
colModel: [
    { name: 'phonenumber', index: 'phonenumber', width: 60, align: "center", formatter: formatPhoneNumber}
]

// converts number to (xxx)xxx-xxxx or xxx-xxx-xxxx
function formatPhoneNumber(cellvalue, options, rowObject) {
    var re = /\D/;
    // test for this format: (xxx)xxx-xxxx
    var re2 = /^\({1}\d{3}\)\d{3}-\d{4}/;
    // test for this format: xxx-xxx-xxxx
    //var re2 = /^\d{3}-\d{3}-\d{4}/;
    var num = cellvalue;
    if (num === null){
        num = "";
    }
    var newNum = num;
    if (num != "" && re2.test(num) != true) {
        if (num != "") {
            while (re.test(num)) {
                num = num.replace(re, "");
            }
        }
        if (num.length == 10) {
            // for format (xxx)xxx-xxxx
            newNum = '(' + num.substring(0, 3) + ')' + num.substring(3, 6) + '-' + num.substring(6, 10);
            // for format xxx-xxx-xxxx
            // newNum = num.substring(0,3) + '-' + num.substring(3,6) + '-' + num.substring(6,10);
        }
    }
    return newNum;
}

关于jquery - jqGrid tableToGrid 格式化电话号码列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8169277/

相关文章:

javascript - jQuery 悬停功能不起作用,不知道为什么

javascript - 使用滚动位置更改固定图像的位置

jquery - 使用仅字段集 ID 构建表单和输入以促进迭代

javascript - MDL 选项卡加载问题

jquery - 调整单选按钮的可折叠复选框树插件

jquery - jqgrid - 水平滚动条 - 位置 - 分页后 - 从左到右

javascript - 如何获取 jqGrid 当前搜索条件?

javascript - 在 Jqgrid 添加/编辑表单中显示一些标签

javascript - free-jqgrid方法和参数列表?

asp.net - jqGrid 行更新