0

次のコードがあります。

jQuery(document).ready(function ($) {
    // ...
    Sys.Application.add_load(function () {
        $(".RadGrid td > .RadInput.RadInput_Default > .riTextBox.riEnabled").each(function () {
            $(this).val($(this).val().replace(/,/g, ""));
        });

        $(".RadGrid td > .RadInput.RadInput_Default > .riTextBox.riEnabled").blur(function () {
            $(this).val($(this).val().replace(/,/g, ""));
        });
    });
}

私がこのコードを書いた理由は、いくつかの自動生成された列と整数の列フィルター値の値をフォーマットする列フィルターを持つ Telerik RadGrid を使用しているためです。たとえば、1000000 は 1,000,000 になります。それは問題なく動作しますが、一部の人を悩ませるため、書式設定を削除する必要があります。基本的に、私たちが話している HTML 要素は入力であり、テレリックによって変更され、コードに表示されているセレクターで見つけることができます。これらの入力にコンマが表示されないようにしたいのです。私のコードは、Google Chrome、FF、および IE9 では正常に動作しますが、IE8 および IE7 では動作しません。実際、ページを読み込んだ後、コンマは表示されませんが、編集してアイテムからフォーカスを外すと、コンマが表示されます。これらの問題は、IE8 および IE7 でのみ該当します。Chrome、FF、IE9、

よろしくお願いします。

よろしくお願いします、

ラホス アルパド。

4

1 に答える 1

1

JQueryのドキュメントから:

要素がフォーカスを失うと、blur イベントが要素に送信されます。当初、このイベントは <input> などのフォーム要素にのみ適用されました。最近のブラウザでは、イベントのドメインが拡張され、すべての要素タイプが含まれるようになりました。

したがって、私が推測するように、riTextBox が入力を含むスパンのクラスである場合、これは機能するはずです。

    $(".RadGrid td > .RadInput.RadInput_Default > .riTextBox.riEnabled input")
       .blur(function () {
                 $(this).val($(this).val().replace(/,/g, ""));
    });
于 2012-09-19T21:35:50.597 に答える