1

私はjquery-autocomplete母国語 (ベトナム語 FWIW) で調性記号を使用しようとしています。単語の完全一致には驚くほど機能します。ただし、検索機能で調性記号を無視するようにしたいです。つまり、"Lâm" と "Lam" の両方を検索すると、デフォルトで "Lâm" と一致します。

ありがとうございました。

4

1 に答える 1

3

クライアントデータでオートコンプリートを使用していると思います。

source関数の使用方法を理解するための概要 (テストされていません) を次に示します。

// use the 'removeDiacritics' function from the quoted answer above
function removeDiacritics(str) {
   ...
}

var myData = ['aäa', 'bbb'];

$('input#autocomplete').autocomplete({
    source: function(request, responseCallback){
        // 'request' holds the value typed in the input,
        // remove diacritics from this value, and build a regexp :
        var reSearch  = new RegExp( removeDiacritics(request) );

        // build an array of matched values :
        var result = [];
        for (var i=0; i<myData.length; i++){
            // for each search candidate, run it through removeDiacritics,
            // and see if result macthes the (diacritics free) regexp :
            if ( reSearch.match( removeDiacritics(myData[i]) ) ){
                result.push(myData[i]);
            }
        }

        // call the callback with this array :
        responseCallback(result);
    }
});
于 2013-04-10T10:52:27.157 に答える