我遇到以下问题:我尝试创建具有多个输入字段的自动完成功能,而不刷新页面。第一字段内容街道名称。第二个应该显示可用的街道号码。我的JS看起来像这样:
$('input#strasse').on('blur', function() {
var hausnummer1 = $('input#strasse').val();
if ($.trim(strasse) != '') {
$.post('ajax/strasse.php', {hausnummer1: hausnummer1}, function(data) {
$('div#hausnummer1-data').text(data);
});
}
});
因此,我在主页上得到的数组为:
<div id="hausnummer1-data"></div>
数据显示正确。现在,我不会在主页上将此数组声明为源N°2:
$(function() {
var availableTags = <?php echo json_encode($array); ?>;//streets from query
var availableTags2 = ?;
$("#strasse").autocomplete({
source: availableTags
});
$("#hausnummer1").autocomplete({
source: availableTags2
});
});
Javascript不是我的事。我对此不做进一步介绍。感谢您的帮助。
strasse.php
require '../connect.php';
$query2 = mysql_query("SELECT distinct(HAUSNRZAHL1) as HAUSNRZAHL1 FROM adresse.90101strasse where STRASSENNAME = '" . mysql_real_escape_string(trim($_POST['strasse'])) . "'");
$array2 = array();
while ($row2 = mysql_fetch_assoc($query2)) {
$array2[] = $row2['HAUSNRZAHL1'];
}
echo json_encode($array2);
假设ajax / strasse.php返回的json做得不错,这应该可以工作:
$.post('ajax/strasse.php', {hausnummer1: hausnummer1}, function(data) {
$("#hausnummer1").autocomplete({
source: data
//or maybe
source: $.parseJson(data)
});
});
顺便说一句,为什么你写的$('div#hausnummer1-data')
不只是$('#hausnummer1-data')
?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句