Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak pobrać i wypełnić wartości z mysql do HTML wybierz opcje dynamicznie w jsp i ajax dla dwóch pól wyboru opcji

W swoim wywołaniu ajax musisz uzyskać select-box (nazwy tabel), a następnie trzeba to przypisać do jakiegoś <div> . Wykonaj poniższe zmiany w kodzie, aby działał:

Javascript :

Funkcja
function sendSchema() {
        var schemaOption = document.getElementById('schemaName');
        var selectedSchema = schemaOption.options[schemaOption.selectedIndex].value;
        var url = "somepage.jsp?schema=" + selectedSchema;

        if (window.XMLHttpRequest) {
            request = new XMLHttpRequest();
        } else if (window.ActiveXObject) {
            request = new ActiveXObject("Microsoft.XMLHTTP");
        }

         request.onreadystatechange= function() 
                        {
                            if(this.readyState === 4 && this.status === 200) {
                            document.getElementById("table").innerHTML =this.responseText;// getting response and assign to div with id->table
                        }
                    }; 
                        request.open("GET",url,true);  
                        request.send();
    }

Teraz w swoim somepage.jsp umieść kod bazy danych jak poniżej:

<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>


     <%
          Statement stmtTableLit = null;
          ResultSet rsTableList = null;
      Class.forName("com.mysql.jdbc.Driver");
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");

     if (request.getParameter("schema") != null) {
                    String selectedSchema = request.getParameter("schema");//getting data 
                    stmtTableLit = conn.createStatement();
                    stmtTableLit.execute("use " + selectedSchema);
                    PreparedStatement pstmt = conn.prepareStatement("show tables");
                    rsTableList = pstmt.executeQuery();

                }
   //whatever will be  there in out.println() will be sent back as response to your index.jsp page         
       out.println('<select id="tableName" onchange="sendTable()">
            <option value="null" selected="selected">Choose the Table</option>');

                if (rsTableList != null) {
                    while (rsTableList.next()) {
                        out.println(
                                "<option value=" + rsTableList.getString(1) + ">" + rsTableList.getString(1) + "</option>");
                    }
                    rsTableList.close();
                }

        out.println('</select>');
     %>

W pliku index.jsp po prostu dodaj <div id="table"></div> , tutaj odpowiedź będzie pochodzić z somepage.jsp , nie zapomnij też usunąć dodatkowego kodu ze swojej strony index.jsp .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Włącz tryb binarny podczas przywracania bazy danych ze zrzutu SQL

  2. MySQL:Nieprawidłowa wartość domyślna dla TIMESTAMP

  3. Unia MySql SELECT dla różnych kolumn?

  4. Jak używać tablicy wartości z PHP w klauzuli 'IN' zapytania mysql?

  5. SQL:Wybierz ostatni rekord dla każdego dnia podanej daty i godziny