0

剣道の他の数値コントロールに影響を与えることなく、カルチャを「通貨」形​​式の数値コントロールに動的に設定/変更する方法を知りたいです。

シナリオ : 9 つの剣道数値テキスト ボックスがあり、そのうち 4 つが「通貨」形​​式です。ユーザーがドロップダウンから選択した通貨に基づいて、特定の「文化」で「通貨」コントロールに入力された数値を表示する必要があります。ドロップダウン項目には、値として意図されたカルチャが設定されます。

例: ドロップダウンに「米ドル」、「ユーロ」の 2 つの項目がある場合、ユーザーがドロップダウンから「米ドル」を選択している場合、「通貨」コントロールに入力された数値は「en」でフォーマットされます。 -米国の文化。

以下の JavaScript 構成を使用して、剣道の数値テキスト ボックスを設定しています。

 function setupNumericTextBoxes(root) {
        
   root.find("[data-role='numerictextbox']").each(function (index, dataControlObj) {

var textbox = $(dataControlObj).data("kendoNumericTextBox");
var numberFormat = $(dataControlObj).data("numberformat");
var cultureToSet = $(dataControlObj).data("culture");

var options = {};

            if (numberFormat === "percentage") {
                options.format = "##.00 \\%"
                options.decimals = 2;
                options.min = 0;
                options.spinners = false;
            }
            else if (numberFormat === "currency") {
                options.format = "c"
                options.decimals = 0;
                options.min = null;
                options.spinners = false;
            }
            else if (numberFormat === "year") {
                options.format = "#"
                options.decimals = 0;
                options.min = 0;
                options.spinners = false;
                setUpYearValidation(dataControlObj);
            }
            else if (numberFormat === "standard") {
                options.format = "n0"
                options.decimals = 0;
                options.min = 0;
                options.spinners = false;
            }
            else {
                options.format = "n0"
                options.decimals = 0;
                options.spinners = false;
            }

            if (cultureToSet){
                options.culture = cultureToSet;
            }

            textbox.setOptions(options);
            // Apply the format
            textbox.value(textbox.value());

        });
   
   

問題を解決するには助けが必要です。

4

1 に答える 1

0

NumericTextBox のカルチャ構成オプションを使用するには、サポートしたいすべてのカルチャに対応する kendo.culture.LANGUAGE.min.js ファイルを含める必要があります。そうしないと、カルチャの形式情報が含まれません。書式設定オプションを取得するために kendo で使用される kendo.cultures 配列に含めます。

http://docs.telerik.com/kendo-ui/api/javascript/ui/numerictextbox#configuration-culture

したがって、「en-US」と「en-IE」をサポートする場合は、両方を含める必要があります

kendo.culture.en-IE.min.js (kendo.cultures["en-IE"] エントリを作成します)

kendo.culture.en-US.min.js (kendo.cultures["en-US"] エントリを作成します)。

次に、NumericTextBox のカルチャ オプションとして "en-US" と "en-IE" を使用できます。

デモ: http://dojo.telerik.com/@Stephen/IhUre

于 2016-11-23T16:33:43.370 に答える