<input>
在与名称列表匹配之前,有什么方法可以修剪(删除前导/尾随空格)用户输入到 jQuery 自动完成文本框中的输入:值?我目前有一个文本框,用户可以在其中输入姓名。然后通过 jQuery 将名称与名称:值对列表进行匹配:
<script type="text/javascript">
var resources = [
<?php
foreach($data['Resource'] as &$row){
$Name = $row['Forename']." ".$row['Surname'];
echo "{";
echo " label:'$Name',";
echo " value:'$row[EmployeeNumber]'";
echo "},";
}
?>
];
jQuery(function(){
jQuery('#Resource').autocomplete({
source: resources,
focus: function(event, ui) {
jQuery('#Resource').val(ui.item.label);
return false;
},
select: function(event, ui) {
jQuery('#Resource').val(ui.item.label);
jQuery('#EmployeeNumber').val(ui.item.value);
return false;
}
});
});
</script>
我的问题是,如果用户输入的名称与resources
地图中的名称匹配,但后面有空格,则不会匹配,因此不会为输入分配任何值。如果可能的话,我希望至少在此映射中忽略尾随空格(如果不是前导空格)。
另外,如果没有找到地图,是否可以为输入框添加默认值?
编辑:
顺便说一句,如果用户键入的内容不匹配,是否可以在下拉自动完成框中显示不匹配的条目?为问题后的编辑道歉。