我正在嘗試構建一個程序,該程序可以幫助我將產品添加到特定的網站,因此,產品(已經輸入到數據庫中)正在使用jsp進行調用(我使用了一個自定義bean來處理所有連接等等。)。爲什麼點擊搜索時頁面會刷新?
到目前爲止,我已經有整個產品列表在頁面加載時顯示在屏幕上。
當點擊搜索按鈕時,我使用了javascript和jsp的混合(我知道jsp是服務器端和javascript客戶端,但是這裏會發生什麼)。
當我點擊搜索按鈕,大約一毫秒,我可以看到搜索顯示正確的結果,但隨後頁面立即刷新,並再次顯示整個列表,我也檢查了瀏覽器上的代碼,它表明該結果是由JavaScript函數處理,但沒有顯示..
這裏是我的代碼(原諒壞的編程技術,我是新來的這個)
<jsp:useBean id="Etn" scope="session" class="com.etn.beans.Contexte" />
<%@page import="com.etn.lang.ResultSet.Set" %>
<%@page import="java.io.BufferedReader" %>
<%@page import="java.io.IOException" %>
<%@page import="java.io.InputStreamReader" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Product selection</title>
<link rel="stylesheet" type="text/css" href=" <%=request.getContextPath()%>/css/bootstrap__portal__.css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/font-awesome.css"/>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/font-awesome.min.css"/>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/bootstrap.min.css"/>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/bootstrap.css"/>
<script src="<%=request.getContextPath()%>/js/bootstrap.js"></script>
<script src="<%=request.getContextPath()%>/js/jquery.js"></script>
<script src="<%=request.getContextPath()%>/js/common.js"></script>
enter code here<script src="<%=request.getContextPath()%>/js/jquery-1.9.1.js"></script>
<script>
function function1(){
document.getElementById('div1').innerHTML =
"<%
String abc=request.getParameter("s1");
if(abc==null){}
else{
Set rs2 = Etn.execute("select * from products where id = '"+abc+"'");
if(rs2.next()){
out.write(rs2.value("id")+" ");
out.write (rs2.value("image_name")+"<br>");
out.write(rs2.value("image_actual_name")+" ");
out.write
(rs2.value("product_type")+"<br><br>");
}
}
%>";
}
</script>
</head>
<body>
<div class ="container">
<center><h2> Search Product </h2></center>
<form action="index.jsp">
<br><br>
<div class ="col-sm-4">
<label> Search By ID </label>
<br>
<input name ="s1" id="e1" type ="text" class ="input-lg"/>
<button class="btn btn-primary" onclick="function1();">Search</button>
<br>
</div>
</form>
<div id="div1">
<%
Set rs = Etn.execute("select * from products");
while(rs.next()){
%><div><%
out.write(rs.value("id")+" ");
out.write (rs.value("image_name")+"<br>");
out.write(rs.value("image_actual_name")+" ");
out.write(rs.value("product_type")+"<br><br>");
}
%>
</div>
</div>
</div>
</body>
</html>