4


0

Jqueryの検証でhtml要素id / nameの特殊文字を処理する方法

私はids(:、 - 、_)に特殊文字を使用するHTMLフォームを持っています。 このフォームはJQuery検証プラグインを使用してユーザー入力を検証します。 具体的には、idにGUIDが含まれています。以下はサンプルコードです。

        $(document).ready(function() {
            $('#respondForm').validate({ onclick: false,
                onkeyup: false,
                onfocusout: false,
                highlight:
function(element, errorClass) {
    $(element).css({ backgroundColor: '#FFFF88' });
}
,
                errorLabelContainer: $("ul", $('div.error-container')),
                wrapper: 'li',
                rules: { Input:_CDD66FA6-D190-434D-AF51-8272F64E0646_14ecbb3f-c0e0-4caf-b03a-013d12118405:
{
    required: true
, minlength: 5
, maxlength: 10
}

                }
,
                messages: { firstName:
{
    required: "xxx_Required"
, minlength: "XXX Should be greater than 5"
, maxlength: "XXX Cannot be greater than 10"
}

                }
            });
        });

ご覧のとおり、入力タイプのテキスト要素のID /名前は「入力:_CDD66FA6-D190-434D-AF51-8272F64E0646_14ecbb3f-c0e0-4caf-b03a-013d12118405」です

このページをブラウザで実行すると、JavaScriptエラーが発生します。

_ _ Webページエラー詳細

メッセージ:Expected '}' +行:23 +文字:50 +コード:0 + URI:http:// localhost:64603 / _ _

エラーは次の行を指しています。

function(element, errorClass) {
    $(element).css({ backgroundColor: '#FFFF88' });
}
,
                errorLabelContainer: $("ul", $('div.error-container')),
                wrapper: 'li',
***[Line 23] ----->   rules: { Input:_CDD66FA6-D190-434D-AF51-8272F64E0646_14ecbb3f-c0e0-4caf-b03a-013d12118405:***

これをどのように解決しますか?

1 Answer


2


"Crescent Fresh"あなたの提案はうまくいきました。IDを一重引用符で囲みます。

規則:{'入力:_CDD66FA6-D190-434D-AF51-8272F64E0646_14ecbb3f-c0e0-4caf-b03a-013d12118405':{

それを機能させる