Jquery自动完成仅在一个输入中工作

时间:2013-07-29 12:26:56

标签: jquery jquery-ui

我创建了三个用于jquery自动完成的输入,但只有第一个有效。其他人不显示价值观!你怎么看这里:

enter image description here

我的意见:

<input type="text" name="FirstName" class="typef">
<input type="text" name="FirstName" class="typef">
<input type="text" name="FirstName" class="typef">

我的代码:

$(function(){
$('.typef').autocomplete({
source: "/patients/list",
focus: function( event, ui ) {
    $( ".typef" ).val( ui.item.nachnahme + " " + ui.item.geburtsdatum ),
    $( ".typef2" ).val(ui.item.id );
    return false;
},
select: function( event, ui ) {
    return false;
  }

 })
.data( "ui-autocomplete" )._renderItem = function( ul, item ) {
  return $( "<li>" )
    .append( "<a>" + item.vorname + " " + item.nachnahme + " " + item.geburtsdatum + " " + "</a>" )
    .appendTo( ul );
};
});

3 个答案:

答案 0 :(得分:1)

尝试

$(function(){
    $('.typef').autocomplete({
        source: "/patients/list",
        focus: function( event, ui ) {
            $( this ).val( ui.item.nachnahme + " " + ui.item.geburtsdatum ),
                $( this ).val(ui.item.id );
            return false;
        },
        select: function( event, ui ) {
            return false;
        }

    }).each(function(){
        $(this).data( "ui-autocomplete" )._renderItem = function( ul, item ) {
            return $( "<li>" )
            .append( "<a>" + item.vorname + " " + item.nachnahme + " " + item.geburtsdatum + " " + "</a>" )
            .appendTo( ul );
        };
    })
});

演示:Fiddle

答案 1 :(得分:1)

尝试为这些字段分配不同的ID

并将$('.typef').autocomplete({更改为$('#id1, #id2, #id3').autocomplete({

我更新了小提琴,供您参考http://jsfiddle.net/t8CnW/6/

答案 2 :(得分:0)

更改

$('.typef').val( ui.item.nachnahme + " " + ui.item.geburtsdatum)

$(ui).val( ui.item.nachnahme + " " + ui.item.geburtsdatum)

解决重复问题。

Here's your fiddle