jQuery AutoComplete для 2 входного поля (тот же класс)

У меня есть два поля ввода, такие как это:

<input name="accountCode" class="accountCode grid_2"/>
<input name="accountCode" class="accountCode grid_2"/>

Я хочу иметь автозаполнитель на обоих этих поля. Я написал следующий JavaScript:

$(".accountCode").autocomplete(
{
    minLength : 1,
    source : function(request, response) {
        $.ajax({                            
            url : baseUrl + "Autocomplete/Account?accountCode=" + $(this).val(),
            dataType : "json",
            success : function(data) {
                response($.map(data, function(item) {
                    return {
                        value : item.accountCode,
                        desc : item.accountName
                    }
                }));
            }
        });
    },
    focus : function(event, ui) {                   
        $(this).val(ui.item.accountCode);
        return false;
    },
    select : function(event, ui) {
        // $("#category").val( ui.item.name );
        $(this).val(ui.item.value);
        // $( "#project-description" ).html( ui.item.desc );
        return false;
    }
}).data("autocomplete")._renderItem = function(ul, item) {
    return $("<li></li>").data("item.autocomplete", item).append(
        "<a><strong>" + item.value + " </strong>" + item.desc + "</a>")
    .appendTo(ul);
}; 

, конечно, мой сервер возвращает данные JSON с 2 полевыми: AccountCode и Accountname .

Я хочу, чтобы оба входа использовать пользовательский рендер в _RENDERITEM , чтобы это будет отображаться в списке:

"<a><strong>" + item.value + " </strong>" + item.desc + "</a>"

для первого поля, он отлично работает, но для второго поля только это отображает только AccountCode из item.Value .

Я проверил, что JSON, полученные с сервера, одинаковы в обоих случаях, поэтому проблема в JavaScript.

Вы знаете, почему эта проблема существует?

15
задан Ciaran Bruen 16 April 2013 в 11:47
поделиться