Формат Telehone в Telrik MVC Grid Client. Шаблон - PullRequest
0 голосов
/ 02 декабря 2011

Как я могу отформатировать номер телефона от xxxxxxxxxx до (xxx) xxx-xxxx

в Telerik MVC Grid .client.template.

Я пробовал что-то подобное.который не работает

string formatPattern = @"(\d{3})(\d{3})(\d{4})";

 columns.Bound(e=>e.ID)
 .ClientTemplate(Html.Raw(String.Format("{0:###-###-####}", "<#= Telephone #>") + "<br />"      + Regex.Replace("<#= Fax #>", formatPattern, "($1) $2-$3")).ToString()).Title("Phone / Fax");

Я пробовал оба способа: String.format и Regex.Replace

Я также пробовал $.telerik.formatString('{0:###-###-####}'<#= telephone =>)

, но безрезультатно.

1 Ответ

2 голосов
/ 06 января 2012

Я сделал это с помощью приведенного ниже кода.

В Telerik Grid столбец привязан вот так

 .ClientTemplate("<#= GetPhoneFaxTemplate(data) #>").Title("Phone / Fax");

И сценарии идут так

function GetPhoneFaxTemplate(data) {
        if (isNumeric(data.Telephone)) {
            var phone = $.telerik.formatString('{0:(###) ###-####}', Number(data.Telephone))
        }
        else {
            phone = data.Telephone;
        }
        if (isNumeric(data.Fax)) {
            var fax = $.telerik.formatString('{0:(###) ###-####}', Number(data.Fax))
        }
        else {
            fax = data.Fax;
        }
        template = phone + "<br />" + fax;
        return template;
    }
    function isNumeric(n) {
        return !isNaN(parseFloat(n)) && isFinite(n);
    }

Вот и все, юрека!

...