【发布时间】:2015-03-04 16:12:07
【问题描述】:
我遇到了 jquery 自动完成的问题。我有一个外部数据源(PHP)。返回的 JSON-Data 看起来正确 [{"value":"Schubert Till","label":"Schubert Till"}],但文本输入框中没有显示任何内容,建议?它以前工作过,然后我切换到响应式设计模板......但我怀疑这是否以某种方式连接。请帮忙。
HTML 部分:
<input type="text" id="p4" name="p4" value="" />
外部 JavaScript:
$( "#p4" ).autocomplete({
source: "autocompletePartner.php",
minLength: 2,
select: function( a, b ) {
$(this).val(b.item.value);
}
});
PHP最后一部分:
while($zeile=$st->fetch(PDO::FETCH_BOTH)) {
$player_id = $zeile[0];
$lastname = $zeile[2];
$firstname = $zeile[1];
$a_json_row[value] = $firstname.' '.$lastname;
$a_json_row[label] = $firstname.' '.$lastname;
array_push($a_json, $a_json_row);
}
echo json_encode($a_json);
mylog (json_encode($a_json));
flush();
【问题讨论】:
-
控制台有错误信息吗?也许你可以试试
$("#p4").val而不是$(this).val -
您使用的是来自 jQuery UI 或其他自动完成插件的
autocomplete吗?您在控制台中看到任何错误吗? -
如果您可以发布从 PHP 收到的示例 JSON 响应,这将有所帮助
-
假设您正在使用 jQuery UI 的自动完成功能,那么
select是当用户在您的建议列表中选择某个值时调用的回调。如果您需要回调来处理来自autocompletePartner.php的服务器响应,那么我建议您使用source的函数变体 -
控制台中没有错误。我正在使用来自 jQueryUI 的自动完成功能。我什至没有在文本输入字段中显示建议列表,所以我认为问题不在于选择一个,问题在于显示
标签: php jquery json autocomplete