Я создаю форму, которая требует автозаполнения с php-file
качестве источника.
Фильтрация выполняется через strassenliste.php
, в результате чего каждый отдельный strassenliste.php
новый php-call
с strassenliste.php
?term=123
к URL-адресу (это для меня все еще достаточно быстро).
Есть один последний вопрос, чтобы заставить работу работать:
У меня есть два поля ввода (первый – #plz
, второй – #strasse
), где plz
означает немецкий « zip
» и strasse « street
». #strasse
– это поле для автозаполнения (через ?term=...
).
Когда пользователь покидает первое поле ввода, а именно #plz
( onblur
), этот ввод ( zipcode
) должен храниться в переменной JavaScript и strassenliste.php
к URL-адресу strassenliste.php
в код автозаполнения jQuery, например, например: -> source: ' strassenliste.php?plz=12345&
'.
Также будет добавлен вход #strasse
, который уже работает #strasse
?term=[input]
.
То, что я до сих пор не работаю, заключается в том, что параметр zip
(за которым следует a &
) добавляется к URL-адресу strassenliste.php
.
В результате источником в автозаполнении должен быть URL -> strassenliste.php?plz=12345&[term=...]
.
Вот мой код, который у меня уже есть:
JavaScript-часть:
<script> $("#plz").blur(function () { var plz = $(this).val(); }).keyup(); var url = "strassenliste.php" + "?=&" + plz; $(function() { $( "#strasse" ).autocomplete({ source: url }); ... </script>
PHP-часть:
$plz = $_GET['plz']; $term = $_GET['term']; [SOAP-Call and response] ... foreach ($sxe->searchresults as $searchresults) { $array[] = utf8_encode($searchresults->strasse); sort ($array); $strassen = "["; foreach ($array as $key => $val) { $strassen .= utf8_decode("\"" . ($val) . "\","); } $strassen .= "\"\""; $length = strlen($strassen); $strassen = substr($strassen, 0, $length - 3); $strassen .= "]"; echo ($strassen);
PHP не проблема, это работает. Я протестировал его, strassenliste.php
значение fix переменной $plz
и просто установив источник в strassenliste.php
в части jQuery.
Но у меня все еще есть проблема с jQuery-Part, которая является последним препятствием для ее работы.
Во-вторых, вопросник в автозаполнении [term =]
может не отображаться, так как он будет добавлен перед « plz=12345
».
У кого-нибудь есть ключ?
Большое вам спасибо за любой намек!
Проблема в том, что ваша строка var url = "strassenliste.php" + "?=&" + plz;
не может видеть переменную plz
поскольку она находится в рамках функции blur
.
Вы также форматируете переменные GET странно в URL-адресе. Обычный способ – myURl.php?var1=Helmut&var2=Thielicke
.
Попробуй это:
$(function() { $("#plz").blur(function () { var plz = $(this).val(), url = "strassenliste.php" + "?plz=" + plz; $("#strasse").autocomplete({ source: url }); }).keyup(); )};