Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wartości w polu select zależne od wartości w innym polu typu input
maxcv5123
post 12.04.2018, 17:55:53
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 5.12.2016

Ostrzeżenie: (10%)
X----


Chcę umieścić w formularzu pole input z 'autocomplete' tak aby przy wpisaniu dowolnych pierwszych liter słowa pokazywało podpowiedzi. I to działa. Chcę jednak dodać drugie pole typu select które byłoby zależne od pierwszego pola input. Jeśli np w pierwszym wybiorę wartość 'BMW' to w drugim polu select powinna pojawić się lista konkretnych modeli. Od dwóch dni szukam jakiegoś rozwiązania. Działa tylko samo input z autocomplete lub znalazłem gotowce gdzie jedno pole jest zależne od drugiego ale obydwa pola są typu select a ja pierwsze mam input. Wszystkie wartości pobierane są z bazy danych. Mój obecny kod na podstawie tego rozwiązania http://makitweb.com/jquery-ui-autocomplete...h-php-and-ajax/



  1.  
  2. <!-- Script -->
  3. <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  4.  
  5. <!-- jQuery UI -->
  6. <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css">
  7. <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
  8. // jakiś kod
  9. <tr>
  10. <td>nazwa</td>
  11. <td><input type='text' id='autocomplete-custom1' ></td>
  12. </tr>
  13.  
  14. <tr>
  15. <td>Id</td>
  16. <td><input type='text' name="selectcustom1_id" id='selectcustom1_id' /></td>
  17.  
  18. </tr>
  19.  
  20. // jakiś kod
  21. <script type='text/javascript' >
  22. $( function() {
  23.  
  24. $( "#autocomplete-custom1" ).autocomplete({
  25. minLength: 2,
  26. source: function( request, response ) {
  27.  
  28. $.ajax({
  29. url: "test.php",
  30. type: 'post',
  31. dataType: "json",
  32. data: {
  33. search: request.term
  34. },
  35. success: function( data ) {
  36. response( data );
  37. }
  38. });
  39. },
  40. select: function (event, ui) {
  41. $('#autocomplete-custom1').val(ui.item.label); // display the selected text
  42. $('#selectcustom1_id').val(ui.item.value); // save selected id to input
  43. return false;
  44. }
  45. });
  46.  
  47. });
  48.  
  49. function split( val ) {
  50. return val.split( /,\s*/ );
  51. }
  52. function extractLast( term ) {
  53. return split( term ).pop();
  54. }
  55.  
  56.  
  57. </script>



  1.  
  2. $host = "localhost"; /* Host name */
  3. $user = "root"; /* User */
  4. $password = ""; /* Password */
  5. $dbname = "strona1"; /* Database name */
  6.  
  7. // Create connection
  8. $con = mysqli_connect($host, $user, $password,$dbname);
  9.  
  10. // Check connection
  11. if (!$con) {
  12. die("Connection failed: " . mysqli_connect_error());
  13. }
  14.  
  15. if(isset($_POST['search'])){
  16. $search = $_POST['search'];
  17.  
  18. $query = "SELECT * FROM test WHERE name like'%".$search."%'";
  19. $result = mysqli_query($con,$query);
  20.  
  21. while($row = mysqli_fetch_array($result) ){
  22. $response[] = array("value"=>$row['id'],"label"=>$row['name']);
  23. }
  24.  
  25. echo json_encode($response);
  26. }
  27.  


I to działa, ale chcę drugie pole select zależne od wartości w pierwszym polu. Może jakieś linki które mi pomogą zrozumieć jak to stworzyć ?
Go to the top of the page
+Quote Post
nospor
post 13.04.2018, 09:41:21
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Przenosze. Z php problem nie ma zadnego zwiazku.

Co do problemu:
to zanim wykonasz AJAX to pobierz dane z input i slij dodatkowo ajaxem


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 01:47