gpt4 book ai didi

javascript - jQuery 日期选择器和自动完成功能结合在一起

转载 作者:太空宇宙 更新时间:2023-11-04 11:34:50 25 4
gpt4 key购买 nike

我是 Jquery 和 Javascript 新手。

我的 jsp 页面 (Index.jsp) 上有两个项目。当我输入字母时,一个文本项“vendor 名称”将“自动完成”,而其他文本项将使用 Jquery Datepicker 接受“帐单日期”。

当我开始输入字母来自动填充存储在数据库中的 vendor 名称时,我尝试调用另一个 jsp (getdata.jsp)。此功能运行正常,没有任何问题。

但是当我在 Index.Jsp 中也包含“帐单日期”项目时,自动完成功能不起作用,但日期选择器起作用。请让我知道如何进行自动完成和日期选择器。

请注意,所需的库已下载并保存在我的工作目录中,并且库路径没有问题。

索引.jsp

<html>
<head>
<link rel="stylesheet" type="text/css" href="./jquery.autocomplete.css" />
<script type="text/javascript" src="./jquery.autocomplete.js"></script>
<script type="text/javascript" src="./jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="./jquery-ui.min.js"></script>
<link rel="stylesheet" href="./jquery-ui.min.css">

<script type="text/javascript" >
$(document).ready(function(){
$("#billdate").datepicker(
{
inline:true,
showOn: "button",
buttonImageOnly: true,
buttonImage: "From_Date_Calendar.jpg",
dateFormat: "dd-M-yy"
});
});
</script>
</head>
<body>
<input type="text" id="country" name="country" />
bill Date <input type="text" id="billdate" readonly /><br/>

<script>
$("#country").autocomplete("getdata.jsp");
</script>
</body>
</html>

getdata.jsp

<%@page import="java.util.Iterator"%>
<%@page import="java.util.List"%>
<%@page import="BillmgmtPack.DummyDB"%>
<%
System.out.println("In get data.jsp");
DummyDB db = new DummyDB();

String query = request.getParameter("q");

List<String> countries = db.getData(query);

Iterator<String> iterator = countries.iterator();

while(iterator.hasNext())
{
String country = (String)iterator.next();
out.println(country);
}
%>

DummyDB.java

package BillmgmtPack;

import java.sql.Connection;
import java.sql.DriverManager;

import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.*;

import javax.naming.*;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpSession;

public class DummyDB {

public List<String> getData(String query) {
String country = null;
query = query.toLowerCase();
Connection con=null;
List<String> matched = new ArrayList<String>();

try{
Class.forName("oracle.jdbc.driver.OracleDriver");
con=DriverManager.getConnection(
"jdbc:oracle:thin:@xxx.xx.xxx.xx:1521:qqqqq","yyyyy","zzzzz");
}catch(Exception e)
{
e.printStackTrace();
}
try{
Statement stmt=con.createStatement();

ResultSet rs=stmt.executeQuery("select vendor_name from vendor_master where vendor_name like upper('"+query+"%')");
//System.out.println("rs query-"+query);

int k=0;
while(rs.next())
{
//System.out.println("in rs query-"+query+" / "+rs.getString(1));
matched.add(rs.getString(1));
k=k+1;
}
if (k==0)
{
matched.add("notfound");
}
} catch(Exception e)
{
e.printStackTrace();
}

return matched;

}
}

最佳答案

JQuery 自动完成也是 jQuery ui 中小部件的名称。也许 jQuery ui 会取代另一个 aucomplete,从而阻止第一个的操作。

我建议您删除第一个自动完成并使用 jQuery ui 的自动完成,引用 Documentation

关于javascript - jQuery 日期选择器和自动完成功能结合在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43391903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com