Eu estou tentando passar valores de banco de dados para js. Mas eu estou recebendo um erro de stepup?

Gopal Krishna Mareti:

Eu tenho meus valores lat e lng no banco de dados e tentar levá-los ao meu javascript no clique de um botão com id ( "track"). mas o código a seguir gera um erro de "StepUp" chamado em um objeto que não implementa interface de HTMLInputElement. como resolver este

Desde já, obrigado.

Create.js

document.getElementById("track").onclick=function tracking(){
    console.log("Tracking");
    var tname=document.getElementsByName("frname");
    var params ={
            trname:tname,
            bt:"I"  
    }
    $.get("SC",$.param(params),function(responsetext){
        var a=responsetext;
        console.log(a);
    });
}

ServerConnect.java

if(bt1.equals("I")){
            String tname=request.getParameter("tname");
            String uname=(String)session.getAttribute("uname");
            try {
                cords =requestingclass.getupdatedlocation(tname,uname);
                String lat=cords.get(1);
                String lng=cords.get(2);
                response.setContentType("text/plain");
                response.setCharacterEncoding("UTF-8");
                response.getWriter().write(lat);
                response.getWriter().write(lng);
            } catch (ClassNotFoundException | SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

requestingclass.java

public static ArrayList<String> getupdatedlocation(String tname, String uname) throws ClassNotFoundException, SQLException {
        Connection con = ConnectionUtility.connect();
        PreparedStatement ps =con.prepareStatement("select lat,lng from requesttable where requester=? and requested=?");
        ps.setString(1, uname);
        ps.setString(2, tname);
        ArrayList<String> cords=null;
        ResultSet rs= ps.executeQuery();
        while(rs.next()){
             cords=new ArrayList<String>();
             cords.add(rs.getString(1));
             cords.add(rs.getString(2));
        }
        return cords;


    }
Rory McCrossan:

É esta linha causando o problema:

var tname = document.getElementsByName("frname");

tnamedetém um objeto Elemento. Em seguida, tentar enviá-lo nos dados do pedido, para jQuery tenta serialização-lo, causando o problema.

Eu presumo que a partir do contexto você em vez deseja obter o valor do elemento, então use isso em vez disso:

var tname = document.getElementsByName("frname").value;

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=362333&siteId=1
Recomendado
Clasificación