zoukankan      html  css  js  c++  java
  • 其实最近写的最多的还是js和jq

    1.在td上添加一个id
    <td align="center" width="68px" id="tdre_payed_money">已付</td>
    2.点击保存时
    //月结选中和回执份数不能同时存在
      if($re_month.attr("checked")==true && parseInt($re_return_receive.val())>0){
       alert("月结和回执份数不能同时存在!");
       return false;
      }
      //如果月结是选中已付 变成月结付 回执份数>0回单付 否则还是已付
      if($re_month.attr("checked")==true){
       $("#tdre_payed_money").html("月结付");
      }else if(parseInt($re_return_receive.val())>0){
       $("#tdre_payed_money").html("回单付");
      }else{
       $("#tdre_payed_money").html("已付");
      }
      canSubmit=false;
    注意写在canSubmit=false;之前否则只能save一次即使错误
    ----------------end---------------------------------
    货物跟踪查询
    1.点击货物编号 弹出页
    {field:'re_goods_code',title:'货物编号',200,align:'left',
            formatter:function(val,rec){
             if(rec.re_authorize_code != "" && rec.re_authorize_code != null){
              return "<a href='javascript:void(0);' style='color:white;' onClick='linkQueryPage(\"" + val + "\")'>&nbsp;&nbsp;"+ val +"</a>";
             }
             else{
              return "<a href='javascript:void(0);' onClick='linkQueryPage(\"" + val + "\")'>&nbsp;&nbsp;"+ val +"</a>";
             }
             
            }
           },
           
           /**
     * 货物跟踪弹出层
     */
    function linkQueryPage(goodsCode)
    {
        $.layer({
         type: 2,
         title: false,
         fix: false,
         closeBtn: false,
         shadeClose: true,
         shade: [0.1,'#fff', true],
         border : [5, 0.3, '#666', true],
         offset: ['80px',''],
         area: ['950px','600px'],
         iframe: {src: 'reGoodsTrack!selectReceiveDiv.action?re_goods_code='+ goodsCode}
        });
    }
    2.在action中
    /**
      * 货物跟踪查询弹出层
      * @return
      */
     public String selectReceiveDiv(){
      re=reGoodsTrackService.selectGoods(re_goods_code.trim(), re_old_code,re_receive_code);
      return "success_div";
     }
     得到re结果集
    3.页面默认得到re结果集
    <input type="hidden" id="re_receive_code" name="re_receive_code" value="${re.re_receive_code}"/>
        <table width="100%" border="0" cellspacing="3" cellpadding="0">
         <tr>
          <td bgcolor="#9ABACF">
           <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
            <tr>
             <td width="14%" height="20" align="right" bgcolor="#F9FAFC">收货机构&nbsp;&nbsp;</td>
             <td width="36%" align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;${re.re_group_code}</td>
             <td width="15%" align="right" bgcolor="#F9FAFC">到货机构&nbsp;&nbsp;</td>
             <td width="35%" align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;${re.re_targetgroup_code}</td>
            </tr>
            <tr>
             <td height="20" align="right" bgcolor="#F9FAFC">目的地&nbsp;&nbsp;</td>
             <td align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;${re.re_arrive_name}</td>
             <td align="right" bgcolor="#F9FAFC">客户单号&nbsp;&nbsp;</td>
             <td align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;${re.re_client_code}</td>
            </tr>
            给id为re_receive_code的隐藏域赋值
    4.在jq中
    // 初始化数据列表
     $('#reData').datagrid(
       {
        width : (widthValue),
        height : (heightValue),
        fitColumns : false,
        remoteSort : false,
        autoRowHeight : false,
        url : "reGoodsTrack!selectDIV",
        queryParams:{'re_receive_code':$("#re_receive_code").val()},
        loadMsg : "数据加载中,请稍等...",
        striped : true,
        columns : [ [ {
         field : 'log_group_code',
         title : '操作机构',
         width : 100,
         align : 'left',
         formatter : function(val, rec) {
          return "&nbsp;&nbsp;" + val;
         }
        }, {
         field : 'log_date',
         title : '操作时间',
         width : 150,
         align : 'center',
         formatter : function(val, rec) {
          return "&nbsp;&nbsp;" + val;
         }
        }, {
         field : 'log_goods_code',
         title : '货物编号',
         width : 150,
         align : 'left',
         formatter : function(val, rec) {
          return "&nbsp;&nbsp;" + val;
         }
        }, {
         field : 'log_optype',
         title : '操作类型',
         width : 120,
         align : 'left',
         formatter : function(val, rec) {
          return "&nbsp;&nbsp;" + val;
         }
        }, {
         field : 'log_content',
         title : '内容',
         width : 580,
         align : 'left',
         formatter : function(val, rec) {
          return "&nbsp;"+val + "&nbsp;";
         }
        } ] ]
       });
       将隐藏域值取出赋给查询条件
       
    5.action中
    public String selectDIV(){
      //把re_receive_code设置到页面隐藏域中,通过jq赋值给属性
      if(re_receive_code!=null && re_receive_code!=""){
       Log log = new Log();
       log.setLog_receive_code(re_receive_code);
       jsonObject = reGoodsTrackService.selectLog(log);
      }
      return "jsonObject";
     }查询出日志信息。
     --------------end---------------------------------
    datagrid两种赋值方式另一种详解
    提货改到货
    1.jsp这边存在隐藏域提交保存查询出来的数据,为提交数据做准备
    <input type="hidden" id="re_receive_code" name="re_receive_code" />
    <input type="hidden" id="re_pickup_date" name="re_pickup_date" />
    <input type="hidden" id="rt_state" name="rt_state" />
    <input type="hidden" id="re_goods_code" name="re_goods_code" />
    top部分为label标签
    <tr>
     <td width="14%" height="20" align="right" bgcolor="#F9FAFC">收货机构&nbsp;&nbsp;</td>
     <td width="36%" align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;<label id="re_group_code"></label></td>
     <td width="15%" align="right" bgcolor="#F9FAFC">到货机构&nbsp;&nbsp;</td>
     <td width="35%" align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;<label id="re_targetgroup_code"></label></td>
    </tr>
    <tr>
     <td height="20" align="right" bgcolor="#F9FAFC">目的地&nbsp;&nbsp;</td>
     <td align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;<label id="re_arrive_name"></label></td>
     <td align="right" bgcolor="#F9FAFC">客户单号&nbsp;&nbsp;</td>
     <td align="left" bgcolor="#FFFFFF">&nbsp;&nbsp;<label id="re_client_code"></label></td>
    </tr>
    下面为普通的grid
    <tr style="height: 37%">
       <td style="height: 37%;">
        <table id="reData"></table>
       </td>
         </tr>
    2.js页面点击查询,是datagrid的另一种加载数据方式如下:
    同样存在查询参数和判断条件如下
    if($.trim($("#query_goods_code").val()) == "" && $.trim($("#query_old_code").val()) == "" ) {
            $.messager.alert('提示信息','货物编号、流水号不能全为空!','error');
            return false;
           }
              //查询参数
              var queryParams = {
                'query_goods_code':$("#query_goods_code").val(),
                'query_old_code':$("#query_old_code").val(),
                'time':new Date()
              };
             重点是 $('#reData').datagrid('loadData',data.logs);这种方式。
       $.ajax({
               url:"puQuerypage!query",
               type:"get",
               data:queryParams,
               dataType:"json",
               async:false,
               cache:false,
               error: function(request){
                 $.messager.alert('提示信息','Connection error','error');
                 return false;
               },
               success:function (data,status){
                if(data.saveMessage == "2"){
              $.messager.alert('提示信息','提货后做过改运费的票子不能做此操作!','error');
              return false;
             }else if(data.saveMessage == "3"){
              $.messager.alert('提示信息','无数据或者转出票不能做此操作!','error');
              return false;
             }else {
                  $('#reData').datagrid('loadData',data.logs);
                  if (data.sumInfo.re_receive_code != null
                 && data.sumInfo.re_receive_code != "") {
                   //给隐藏域赋值,点击提交使用
                   $("#re_receive_code").val(data.sumInfo.re_receive_code);
                $("#re_pickup_date").val(data.sumInfo.re_pickup_date);
                $("#rt_state").val(data.sumInfo.rt_state);
                $("#re_goods_code").val(data.sumInfo.re_goods_code);
                //得到服务器当前时间赋值给页面隐藏域,点击提交使用
                $("#sysDate").val(data.sysDate);
                //end
                $("#re_group_code").text(data.sumInfo.re_group_code);
                $("#re_targetgroup_code").text(data.sumInfo.re_targetgroup_code);
                $("#re_arrive_name").text(data.sumInfo.re_arrive_name);
                $("#re_client_code").text(data.sumInfo.re_client_code);
                $("#re_goods_name").text(data.sumInfo.re_goods_name);
                $("#re_goods_count").text(data.sumInfo.re_goods_count);
                $("#re_goods_codeL").text(data.sumInfo.re_goods_code);
                $("#re_old_code").text(data.sumInfo.re_old_code);
                $("#re_type").text(data.sumInfo.re_type);
                $("#re_get_type").text(data.sumInfo.re_get_type);
                $("#re_send_man").text(data.sumInfo.re_send_man);
                $("#re_send_tel").text(data.sumInfo.re_send_tel);
                $("#re_receive_man").text(data.sumInfo.re_receive_man);
                $("#re_receive_tel").text(data.sumInfo.re_receive_tel);
                $("#re_standard_count").text(data.sumInfo.re_standard_count);
                $("#re_weight").text(data.sumInfo.re_weight);
                $("#re_volume").text(data.sumInfo.re_volume);
                $("#re_pickupfee").text(data.sumInfo.re_pickupfee);
                $("#re_return_receive").text(data.sumInfo.re_return_receive);
                $("#re_songhuofei").text(data.sumInfo.re_songhuofei);
                $("#re_payed_money").text(data.sumInfo.re_payed_money);
                $("#re_arrive_pay").text(data.sumInfo.re_arrive_pay);
                $("#re_mat_traffic").text(data.sumInfo.re_mat_traffic);
                $("#re_insure_account").text(data.sumInfo.re_insure_account);
                $("#re_gets_goods").text(data.sumInfo.re_gets_goods);
                $("#re_insure_money").text(data.sumInfo.re_insure_money);
                $("#re_remark").text(data.sumInfo.re_remark);
              }
                }
               }
              });  
    3.注意我们看action页面
    public String query(){
      jsonMap = new HashMap<String, Object>();
      if(puQuerypage == null) {
       puQuerypage = new PuQuerypage();
      }
      
      sysDate = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
      
      puQuerypage.setQuery_goods_code(query_goods_code.trim());
      puQuerypage.setQuery_old_code(query_old_code.trim());
      puQuerypage = puQuerypageService.query(puQuerypage);
      
      if(puQuerypage!=null){
       List<String> list = puQuerypageService.queryCheckMm(puQuerypage.getRe_receive_code()+"");
       if(list!=null&&list.size()>0){
        puQuerypage = null;
        jsonMap.put("saveMessage", "2");
        //request.setAttribute("tipMessage", "提货后做过改运费的票子不能做此操作!");
       }else{
        Log log = new Log();
        log.setLog_receive_code(Long.toString(puQuerypage.getRe_receive_code()));
        logs = puQuerypageService.selectLog(log);
       }
       
      }
      else{
       jsonMap.put("saveMessage", "3");
       //request.setAttribute("tipMessage", "转出票不能做此操作!");
      }
      jsonMap.put("sumInfo", puQuerypage);
      jsonMap.put("logs", logs);
      jsonMap.put("sysDate", sysDate);
      jsonObject = JSONObject.fromObject(jsonMap);
      return "jsonObject";
     }
     json中存在label要用的数据sumInfo,datagrid要用的数据是logs,sysDate是提交要用的数据注意保存在隐藏域中
    4.一个是服务器时间,另一个是数据库表中字段时间是如何比较呢?
    我们看到是拿到前端js中比较的
     $("#rt_state").val(data.sumInfo.rt_state);
     //得到服务器当前时间赋值给页面隐藏域,点击提交使用
     $("#sysDate").val(data.sysDate);
     提交比较部分:
     var sysDate = $("#sysDate").val();
        var state = $("#rt_state").val();
      var arr1 = sysDate.split('-');
     var nowdate = new Date(arr1[0], arr1[1], arr1[2]);

     var arr  = pdate.split('-');
     var comdate = new Date(arr[0], arr[1], arr[2]);
     
     if(nowdate.getTime() != comdate.getTime()) {
      $.messager.alert('提示信息','只能对当天提货数据进行该操作!','error');
      return false;
     }
     --------------end---------------------------------

  • 相关阅读:
    05-Selenium的三种等待
    04-selenium 八大元素定位方法
    03-Selenium简单操作
    python-利用json模块处理json数据几个函数总结
    python-利用pymysql获取数据简单使用总结
    python-利用faker模块生成测试数据
    python-利用random模块生成测试数据封装方法总结
    python-利用shutil模块rmtree方法可以将文件及其文件夹下的内容删除
    pytest--配置用例执行顺序(pytest_ordering插件介绍)
    pytest--mark基本使用(主要通过pytest.ini文件注册标签名,对用例进行标记分组)
  • 原文地址:https://www.cnblogs.com/pond/p/5576486.html
Copyright © 2011-2022 走看看