jquery - jQuery自动完成 - 修改所选选项的值
问题描述
我有以下在一定程度上可以按预期工作。它可以很好地恢复数据。
如果我从 line_manager 字段中搜索,项圈会更新得很好。但是,如果我从衣领字段中搜索,衣领字段会显示 line_manager 数据。
我的问题是当我选择一个选项时,不是显示 JSON 中带回的值,而是如何显示ui.item.some_other_field
?
function autoComp(type) {
$( "."+type ).autocomplete({
source: function( request, response ) {
$.ajax( {
url: "/searchContacts/json",
type: 'POST',
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data );
}
} );
},
minLength: 3,
select: function( event, ui ) {
var id = $(this).data("id")
$('input.collar[data-id="'+id+'"]').val(ui.item.collar);
$('input.line_manager[data-id="'+id+'"]').val(ui.item.forename + ' ' + ui.item.surname);
}
} ).autocomplete( "instance" )._renderItem = function( ul, item ) {
return $( "<li>" )
.append( "<div>" + item.label + "<br><small>" + item.department + " / "+item.team+"</small></div>" )
.appendTo( ul );
};
}
解决方案
似乎可以解决问题
select: function( event, ui ) {
var id = $(this).data("id")
$('input.collar[data-id="'+id+'"]').val(ui.item.collar);
$('input.line_manager[data-id="'+id+'"]').val(ui.item.forename + ' ' + ui.item.surname);
return false;
}
推荐阅读
- java - IntelliJ 检查“未处理的异常”和多个其他错误,但项目成功编译 Java SDK 1.6
- typescript - 我想用 typescript 将 mikroConfig 初始化为 MikroORM,我收到了这个错误消息
- laravel - Laravel - 如何在 Laravel 中格式化合并到小数位
- list - 如何在颤动中增加最大作业数 60
- java - 在 Eclipse 中使用 google or-tools
- linkedin - LinkedIn API:请求中使用的令牌已被用户撤销
- javascript - 如何在 Javascript 中将字符串编码为 Unicode 十进制
- reactjs - 有条件地将 props 传递给带有 typescript 组件的 React
- python - Mac Big Sur:无法从 OpenGL_accelerate 加载 numpy_formathandler 加速器
- r - 在 VS 代码中配置 R