javascript - 我正在尝试将值从数据库传递到js。但我收到了升压错误?

标签 javascript java jquery servlets

我已经在数据库中获取了 lat 和 lng 值,并尝试通过单击带有 id(“track”)的按钮将它们获取到我的 javascript。但以下代码会在未实现 HTMLInputElement 接口(interface)的对象上调用“stepUp”错误。怎么解决这个问题

提前致谢。

创建.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);
    });
}

服务器连接.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();
            }
        }

请求类.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;


    }

最佳答案

正是这一行导致了问题:

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

tname 包含一个 Element 对象。然后,您尝试将其发送到请求的数据中,因此 jQuery 尝试对其进行序列化,从而导致问题。

我从上下文中推测您想要获取元素的,因此请使用它:

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

关于javascript - 我正在尝试将值从数据库传递到js。但我收到了升压错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59785690/

相关文章:

java - Findbugs-NP - NP_NULL_ON_SOME_PATH

java - App Engine 拉取队列仅加载任务的子集

javascript - 通过数组值查找选项

javascript - 如何在javascript中找到两个不不同数组的差异?我使用了下划线,但我对普通 JS 持开放态度

javascript - 仅当子菜单处于事件状态时才跟随超链接

javascript - Google Analytics trackEvent 内部链接无法正常工作

javascript - 使用 Javascript 将数据存储到本地存储

java - 如何实现 GWT、Java、按钮和点击处理程序

javascript - 如何使用 AJAX 请求 url

javascript - mvc中用ajax调用controller