菜品删除的提示框
来源:5-2 作业题
liqihang
2018-06-11 14:15:48
我想如果删除的ID不存在的话,就弹出一个提示框,可是没有效果,怎么才能弹出呢
5回答
chrismorgen
2018-06-12
要将对msg的判断放到底部。
如下图所示。是msg="";而不是msg=" ";你的双引号中间多了一个空格符。修改完之后你需要的功能就完成了。祝学习愉快~
liqihang
提问者
2018-06-12
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<%String msg="";
if(request.getAttribute("msg")!=null)
msg=(String)request.getAttribute("msg"); %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
var msg="<%=msg%>";
if(msg!=null&&msg!=" "){
alert(msg);
}
</script>
<title>菜品删除</title>
<style type="text/css">
</style>
</head>
<body>
<h3><%=msg %></h3>
<center>
<h1>根据ID删除菜品</h1>
<form action="/foodManage/deleteServlet" method="post">
<table width="400px" border="1px" cellspacing="0px" cellpadding="0px">
<tr>
<td>菜品ID</td>
<td><input type="text" name="id"></td>
</tr>
<tr>
<td colspan="2" style="text-align:center"><input type="submit" value="删除"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
package foodServlet;
import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import utils.FoodDaoImpl;
/**
*菜品删除的servlet
*/
@WebServlet("/deleteServlet")
public class deleteServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id=request.getParameter("id");
boolean flag=FoodDaoImpl.deleteFoodById(id);
if(!flag){
request.setAttribute("msg", "您要删除的菜品id不存在,请重新输入");
request.getRequestDispatcher("/myFile.jsp/deleteById.jsp").forward(request, response);
return;
}else{
request.getRequestDispatcher("/myFile.jsp/showFoodList.jsp").forward(request, response);
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
chrismorgen
2018-06-11
你是放到代码底部了么?程序是按照顺序执行的。祝学习愉快~
liqihang
提问者
2018-06-11
chrismorgen
2018-06-11
你可以按照下图方式进行修改。获取msg的值并进行判断。如果msg不为null并且不为“”,则弹出弹窗,
修订之后的效果如下图:
如果我的建议解决了你的问题,请采纳,祝学习愉快~
相似问题