ssm踩坑记录二

记录一 ajax请求 前台无反应 不报错

原因一般就是路径问题,但是发现路径并没有毛病
一开始以为是div最外层没有用form包裹(其实并不需要)

<button type="submit" class="btn bg-olive btn-xs" id="delete"  onclick="return trash(${ms.m_id})">删除</button>

// 删除信息的方法
        function trash(id) {
            alert(id);
            $.ajax({
                url: '<%=basePath%>/deleteMember?id='+id,
                success: function (data) {
                    // $("body").html(data);
                },
                error: function () {
                    alert("错误");
                }
            })
        }


@RequestMapping(value = "/deleteMember")
    public String delete(Model model,@RequestParam Integer id) {
        System.out.println("test");
        memberService.deleteMember(id);
        model.addAttribute("message", "删除客户信息成功");
        return "forward:showHuiyuanMessage";
    }

上面是代码部分,原因是因为@RequestMapping(value = “/Member”)没有在类上做注解,加上RequestMapping后,好了,所以ajax的请求路径变为了url: ‘<%=basePath%>/Member/deleteMember?id=’+id,其中原来类中涉及到的 return “huiyuanxinxi”;转发部分,不需要加Member,因为是在一个类中做请求的。至今不理解为什么要在类上加RequestMapping才能ajax请求到

tip2

document.getElementById获取属性的.value,需要放置再form表单中

<form  name="formTest" method="get">
<input type="text" class="form-control input-sm" placeholder="输入员工编号来搜索" name="e_id" id="e_id"></input>
<input type="submit" value="提交" onclick="select()"> </form>

function select(){
    alert("select");
    
    var e_id = document.getElementById("e_id").value;
    alert(e_id);
    document.formTest.action="<%=basePath%>/Employee/showEmloyeeOne?e_id="+e_id;
    document.formTest.submit();
    //提交
}

//提交表单后刷新页面 window.location.reload(); //刷新页面

 // 删除信息的方法
        function trash(id) {
            $.ajax({
                url: '<%=basePath%>/Employee/deleteEmplyoee?id='+id,
                success: function () {
                    // alert("删除成功");
                    window.location.reload();  //刷新页面
                },
                error: function () {
                    // alert("错误");
                    window.location.reload();
                }
            })
        }

tip3

@RequestParam(value = “e_id”, required = false, defaultValue = “0”) Integer e_id
设置默认值

tip4

左侧搜索框输入111001,按道理应该是加载出来111001的数据,但是最新数据并没有加载到界面上,在右侧是最新数据,如何
在这里插入图片描述

function select(){
    <%--var m_id = document.getElementById("m_id").value;--%>
    <%--alert(m_id);--%>
    <%--$.ajax({--%>
        <%--url: '<%=basePath%>/Member/showHuiyuanMessage?m_id='+m_id,--%>
        <%--success: function (data) {--%>
            <%--// $("body").html(data);--%>
            <%--alert("成功");--%>
            <%--// window.location.reload()  //刷新页面--%>
        <%--},--%>
        <%--error: function () {--%>
            <%--alert("错误");--%>
            <%--// window.location.reload()  //刷新页面--%>
        <%--}--%>
    <%--})--%>

    alert("select");
    var m_id = document.getElementById("m_id").value;
    alert(m_id);
    document.teste.action="<%=basePath%>/Member/showHuiyuanMessage?m_id="+m_id;
    document.teste.submit();
}

最终选择了屈服,没有使用ajax的方式去调用,使用代码提交的方式,存在问题就是,无论你写的action是什么,提交的都是最开始页面加载的函数 使用ajax的话又会出现页面无法加载的问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

tip5

在这里插入图片描述

<c:forEach items="${commodities}" var="commodities" varStatus="status">
<tr>
     <%--<c:if test="${(status.count-1)%4==0}">--%>
         <%--<tr>--%>
     <%--</c:if>--%>
 <td><img src="${commodities.c_picture}"  style="width: 120px;height: 120px" ><br/>
     ${commodities.c_name}<br/>${commodities.c_sellprice}<br/>${commodities.c_place}<br/></td>
         <%--<c:if test="${(status.count)%4==0}">--%>
          <%--</tr>--%>
         <%--</c:if>--%>
     <td><img src="${commodities.c_picture}"  style="width: 120px;height: 120px" ><br/>
             ${commodities.c_name}<br/>${commodities.c_sellprice}<br/>${commodities.c_place}<br/></td>
     <td><img src="${commodities.c_picture}"  style="width: 120px;height: 120px" ><br/>
             ${commodities.c_name}<br/>${commodities.c_sellprice}<br/>${commodities.c_place}<br/></td>
     <td><img src="${commodities.c_picture}"  style="width: 120px;height: 120px" ><br/>
             ${commodities.c_name}<br/>${commodities.c_sellprice}<br/>${commodities.c_place}<br/></td>
 </tr>
 </c:forEach>

想让代码部分每出现四个,提供一个tr标签 换行

 <c:forEach items="${commodities}" var="commodities" varStatus="status">
    <c:if test="${(status.count-1)%4==0}">
        <tr>
    </c:if>
<td><img src="${commodities.c_picture}"  style="width: 120px;height: 120px" ><br/>
    ${commodities.c_name}<br/>${commodities.c_sellprice}<br/>${commodities.c_place}<br/></td>
        <c:if test="${(status.count)%4==0}">
         </tr>
        </c:if>
</c:forEach>
//判断非空
<c:if test="${not empty orderList.s_money}">
    ¥${orderList.s_money}
</c:if>

//判断空的
<c:if test="${empty orderList.s_money}">
    ¥${orderList.s_money}
</c:if>

1,int 类型 直接使用==就可以
<c:if test="${sl.chc_status == 1}"> <td>未指派</td> <c:if>
2,char 类型   需要对应的ASCII码 
例如:
0对应的是48 ,1对应的是49 ,2对应的是50
例:
<c:if test="${sl.chc_status == 49}">  <td>未指派</td>  <c:if>

tip7 对应mysql数据库插入datetime类型数据

两种方式
一种是用格式化的方式

DateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
String punchTime = simpleDateFormat.format(date);//格式化后的时间

另外一种是使用import java.sql.Timestamp;包下的Timestamp类型

Date date = new Date();
Timestamp timeStamp = new Timestamp(date.getTime());

tip8 date类型转换为查询月份

Date date = order.getS_date();
Calendar calendar = Calendar.getInstance();  //应该是一个单例模式写的
calendar.setTime(date);   //设置日期
int monthDate = calendar.get(Calendar.MONTH);  //Calendar.MONTH是从0开始的
monthDate+=1;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值