1. <td class="queryTitle" width="100">优惠券批次号</td>
  2. <td class="queryContent" width="100">
  3.  
  4. <input class="inputText easyui-validatebox" type="text" id="EditPubliId" />
  5. </td>
  1. //添加优惠券促销窗口
  2. function addCouExDlg(){
  3. $("#EditPubliId").removeAttr("readonly");
  4. $("#hideActivityId").val('');
  5. $('#EditActName').val('');
  6. $('#EditActNo').val('');
  7. $('#EditActBeginDate').combo('setText','');
  8. $('#EditActEndDate').combo('setText','');
  9. $("#EditConditionType").combobox('setValue',"0");
  10. $("#EditCjType").combobox('setValue',"1");
  11. $('#EditCjCount').val('');
  12. $('#EditPubliId').val('');
  13.  
  14. $('#EidtActivityDesc').val('');
  15. $("input[name='publishRangeC']").attr("checked",false);
  16.  
  17. $('#addCouponPromoteDlg').window({
  18. title:'优惠券促销添加',
  19. iconCls:'icon-add',
  20. width:693,
  21. height:300,
  22. left:100,
  23. modal: true,
  24. shadow: true,
  25. collapsible:false,
  26. minimizable:false,
  27. maximizable:false
  28. });
  29. $('#addCouponPromoteDlg').window('move',{top:100});
  30. $('#addCouponPromoteDlg').window('open');
  31. }
  1. //优惠券活动修改框
  2. function showEdit(rowData){//dataStr
  3. // $("#EditPubliId").removeAttr("readonly");
  4. $("#hideActivityId").val(rowData.cjActivityId);
  5. $('#EditActName').val(rowData.activityName);
  6. $('#EditActNo').val(rowData.activityNo);
  7. $('#EditActBeginDate').datebox("setValue",rowData.beginTime);
  8. $('#EditActEndDate').datebox("setValue",rowData.endTime);
  9. $("#EditConditionType").combobox('setValue',rowData.conditionType);
  10. if(rowData.isEnable=='Y'){
  11. $('input[name="isUseR"][value="Y"]').attr('checked', true);
  12. }else if(rowData.isEnable=='N'){
  13. $('input[name="isUseR"][value="N"]').attr('checked', true);
  14. }
  15. $("#EditCjType").combobox('setValue',rowData.cjType);
  16.  
  17. if(rowData.publishRange==null ||rowData.publishRange==''){
  18. $("input[name='publishRangeC']").attr("checked",false);
  19. }
  20. //checkbox 数据回显
  21. var publishRange=rowData.publishRange.split(",");
  22. for(var i = 0;i < publishRange.length; i++) {
  23. $("input[name='publishRangeC'][value="+publishRange[i]+"]").attr('checked', true);
  24. }
  25. //定义隐藏域
  26. $("#hiddendActivityNo").val(rowData.activityNo);
  27. $("#hiddendPublishId").val(rowData.publishId);
  28. $('#EditCjCount').val(rowData.cjCount);
  29. $('#EditPubliId').val(rowData.publishId);
  30. if(rowData.publishId!=null){
  31. $("#EditPubliId").attr("readonly","readonly");
  32. }
  33. $('#EidtActivityDesc').val(rowData.activityDesc);
  34. $('#addCouponPromoteDlg').window({
  35. title:'优惠券活动编辑',
  36. iconCls:'icon-add',
  37. width:693,
  38. height:300,
  39. left:100,
  40. modal: true,
  41. shadow: true,
  42. collapsible:false,
  43. minimizable:false,
  44. maximizable:false
  45. });
  46. $('#addCouponPromoteDlg').window('move',{top:100});
  47. $('#addCouponPromoteDlg').window('open');
  48. }
  1. function showWin(id){
  2. if(id==-1)
  3. {if(getSelect()!=undefined){id=getSelect().id;}else{return;}}
  1. $("#addbatchNo").removeAttr("readonly");
  1. $("#addcardFee").removeAttr("readonly");
  2. $("#addsaleFee").removeAttr("readonly");
  3. $("#addamount").removeAttr("readonly");
  4. $("#isshow").show();
  5. $("#idHidden").val("");
  6. $("#addcardFee").val("");
  7. $("#addeditUser").val("");
  8. $("#addsaleFee").val("");
  9. $("#addcardType").combobox("setValue","请选择");
  10. $("#addcardUse").combobox("setValue","请选择");
  11. $("#adduserId").val("");
  12. $("#batchId").val("");
  13. $("#addbatchName").val("");
  14. $("#addremarks").val("");
  15. $("#addbatchNo").val("");
  16. $("#addamount").val("");
  17. $("#addbatchTime").datebox("setValue",'');
  18. $("#addaddUser").val("");
  19. var iconStr="icon-add";
  20. if(id!=null){
  21. iconStr="icon-edit";
  22. $.post(
  23. appPath+"/page/cardBatchAct/getBean/"+id,
  24. {},
  25. function(data){
  26. $("#batchId").val(id);
  27. $("#addcardFee").val(data.cardFee);
  28. if(data.isValid!=null&&data.isValid!=''&&data.isValid!=0){//如果卡不是未激活状态,都不允许修改
  29. $("#addcardFee").attr("readonly","readonly");
  30. }
  31. $("#addsaleFee").val(data.saleFee);
  32. if(data.isValid!=null&&data.isValid!=''&&data.isValid!=0){//如果卡不是未激活状态,都不允许修改
  33. $("#addsaleFee").attr("readonly","readonly");
  34. }
  35. $("#isshow").hide();
  36. $("#addcardType").combobox("setValue",data.cardType);
  37. $("#addcardUse").combobox("setValue",9);//编辑时默认为9(无用,避过验证)
  38. $("#addbatchName").val(data.batchName);
  39. $("#addremarks").val(data.remarks);
  40. $("#addbatchNo").val(data.batchNo);
  41. $("#addbatchNo").attr("readonly","readonly");
  42. $("#addamount").val(data.amount);
  43. $("#addamount").attr("readonly","readonly");
  44. $("#addbatchTime").datebox("setValue",data.batchTime);
  45. },"json");
  46. }
  47. $('#opreateHtml').window({
  48. title:'编辑',
  49. iconCls:iconStr,
  50. width:800,
  51. height:400,
  52. left:200,
  53. modal: true,
  54. shadow: true,
  55. collapsible:false,
  56. minimizable:false,
  57. maximizable:false
  58. });
  59. $('#opreateHtml').window('move',{top:100});
  60. $('#opreateHtml').window('open');
  61. }
  1. <tr>
  2. <td class="queryTitle" width="80px">卡面额</td>
  3. <td class="queryContent" ><input class="inputText" type="text" id="addcardFee" /><label id="cardFeeLabel" style="color: red; display: none;">卡面额不能为空</label></td>
  4. <td class="queryTitle" width="80px">售卡金额</td>
  5. <td class="queryContent" ><input class="inputText" type="text" id="addsaleFee" /><label id="saleFeeLabel" style="color: red; display: none;">售额不能为空</label></td>
  6. </tr>
  1. function showWin(id,isStatus) {
  2. if (id != null && isStatus!=null) {
  3. // 不同的活动状态不同的编辑字段
  4. if(isStatus !=null){
  5. if (isStatus == 'finished'||isStatus=='stopped' ) {
  6. $.messager.alert('提示', "此活动状态不可编辑", 'info');
  7. return;
  8. }
  9. if (isStatus =='activated') {
  10. $("#addstartTime").datetimebox("disable");
  11. $("#addendTime").datetimebox("disable");
  12. $("#form_edit").find("input[id=addweixinName]").attr(
  13. "disabled", "disabled");
  14. //隐藏照片的上传按钮
  15. $("#fsUploadDiv").css("display","none");
  16. $("#form_edit").find("input[id=addgroupPrice]").attr(
  17. "disabled", "disabled");
  18. $("#form_edit").find("input[id=adddiscountLab]").attr(
  19. "disabled", "disabled");
  20. $("#form_edit").find("input[id=addminimumJoinMemberNum]").attr(
  21. "disabled", "disabled");
  22. $("#form_edit").find("input[id=addbeginWaitTime]").attr(
  23. "disabled", "disabled");
  24. $("#form_edit").find("input[id=addorderBy]").attr("disabled",
  25. "disabled");
  26. }else{
  27. $("#fsUploadDiv").css("display","block");
  28. $("#addstartTime").datetimebox("enable");
  29. $('#addendTime').datetimebox("enable");
  30. $('#addweixinName').removeAttr("disabled");
  31. $('#addgroupPrice').removeAttr("disabled");
  32. $('#adddiscountLab').removeAttr("disabled");
  33. $('#addminimumJoinMemberNum').removeAttr("disabled");
  34. $('#addbeginWaitTime').removeAttr("disabled");
  35. $('#addorderBy').removeAttr("disabled");
  36. }
  37. }
  38. }else{
  39. $("#fsUploadDiv").css("display","block");
  40. $("#addstartTime").datetimebox("enable");
  41. $('#addendTime').datetimebox("enable");
  42. $('#addweixinName').removeAttr("disabled");
  43. $('#addgroupPrice').removeAttr("disabled");
  44. $('#adddiscountLab').removeAttr("disabled");
  45. $('#addminimumJoinMemberNum').removeAttr("disabled");
  46. $('#addbeginWaitTime').removeAttr("disabled");
  47. $('#addorderBy').removeAttr("disabled");
  48.  
  49. }
  50. /**
  51. * 三种方法移除disabled属性
  52. * $('#form_edit').attr("enable",true);
  53. * $('#form_edit').attr("disabled",false);
  54. * $('#addweixinName').removeAttr("disabled");
  55. * $('#form_edit').attr("disabled","");
  56. */
  57. $("#fileList").html("");
  58. $("#idHidden").val("");
  59. $("#adddiscountLab").val("");
  60. $("#addweixinName").val("");
  61. // 团长开团等待时间 #12327 修复
  62. $("#addbeginWaitTime").val("24");
  63.  
  64. $("#addgroupPrice").val("");
  65. $("#addminimumJoinMemberNum").val("");
  66. $("#addstartTime").datebox("setValue","");
  67. $("#addendTime").datebox("setValue","");
  68. // $("#addbeginTime").datebox("setValue","");
  69. // $("#addendTime").datebox("setValue","");
  70. $("#addorderBy").val("");
  71. $("#addisStatus").combobox("setValue", 'nonactivated');
  72. $("#imgUrlHidden").val("");
  73.  
  74. var iconStr = "icon-add";
  75. var title = "新增微信团";
  76. var urlList;
  77. if (id != null) {
  78. iconStr = "icon-edit";
  79. title = "编辑微信团";
  80. $.post(appPath + "/page/weixinActivityAct/getBean/" + id, {}, function(
  81. data) {
  82. $("#idHidden").val(data.weixinId);
  83. $("#adddiscountLab").val(data.discountLab);
  84. $("#addweixinName").val(data.weixinName);
  85. $("#addbeginWaitTime").val(data.beginWaitTime);
  86. $("#addgroupPrice").val(data.groupPrice);
  87. $("#addminimumJoinMemberNum").val(data.minimumJoinMemberNum);
  88. // $("#addbeginTime").datebox("setValue",data.beginTime);
  89. $("#addendTime").datebox("setValue", data.endTime);
  90. $("#addstartTime").datebox("setValue", data.startTime);
  91. $("#addTimeweixin").val(data.addTimeweixin);
  92. $("#addorderBy").val(data.sortBy);
  93. $("#addisStatus").combobox('setValue', data.isStatus);
  94.  
  95. // $("#editWeixinStatus").val(data.editWeixinStatus);
  96. $("#editWeixinStatus").val(data.isStatus);
  97. if (data.bannerImgUrl != null && data.bannerImgUrl !=""){
  98. $("#imgUrlHidden").val(data.bannerImgUrl+";");
  99. //获取Img标签Url
  100. urlList = data.bannerImgUrl.split(';');
  101. }
  102. if(urlList!=null && urlList!=''){
  103. for (var i=0;i<urlList.length;i++){
  104. // 获取当前时间作为随机值,用于img标签ID
  105. var randomVal = getTimestamp();
  106. //读取每个Url,并创建Img标签
  107. $("#fileList")
  108. .append("<div id = 'div"+randomVal+"' style='display: inline'><img id='img"+ randomVal+ "' style='border: solid 1px #ccc; padding: 3px; width: 70px; height: 50px; cursor: hand;' /> " +
  109. "<a id='a"+randomVal+"' href='javascript:void(0)' onclick='deleteImg(this)'>删除</a>&nbsp;&nbsp;</div>");
  110. //设置Src属性
  111. $("#img" + randomVal).attr("src", urlList[i]);
  112. }
  113. //激活状态下,隐藏删除<a>标签
  114. if (isStatus =='activated') {
  115. $("#form_edit a").hide();
  116. }else{
  117. $("#form_edit a").show();
  118. }
  119. }
  120. }, "json");
  121.  
  122. }
  123. $('#opreateHtml').window({
  124. title : title,
  125. iconCls : iconStr,
  126. width : 888,
  127. height : 500,
  128. left : 200,
  129. modal : true,
  130. shadow : true,
  131. collapsible : false,
  132. minimizable : false,
  133. maximizable : false
  134. });
  135. $('#opreateHtml').window('move', {
  136. top : 20
  137. });
  138.  
  139. $('#opreateHtml').window('open');
  140. }
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  3. <c:set var="ctx" value="${pageContext.request.contextPath}" />
  4. <jsp:include page="/jsp/common/header.jsp"></jsp:include>
  5. <jsp:include page="/jsp/common/common_upload.jsp"></jsp:include>
  6. <script src="${ctx }/js/weixin/weixinActivity.js"></script>
  7. <!-- <input type="hidden" id="addTime" /> -->
  8.  
  9. <input type="hidden" id="addTimeweixin" name="addTimeweixin" value="" />
  10. <input type="hidden" id="editWeixinStatus" name="editWeixinStatus" value="" />
  11. <script type="text/javascript">
  12. $(function(){
  13. // 图片上传初始化
  14. $("#divStatus").hide();
  15. initSWFUpload({
  16. flash_url : "${ctx }/js/lib/SWFUpload/Flash/swfupload.swf",
  17. upload_url : "${ctx }/page/ecUpload/pic/weixinActivity",
  18. file_post_name : 'uploadFile',
  19. use_query_string : true,
  20. file_size_limit : "150 KB",
  21. file_types : "*.jpg;*.png;",
  22. file_types_description : "All Files",
  23. file_upload_limit : 100,
  24. file_queue_limit : 0,
  25. custom_settings : {
  26. progressTarget : "fsUploadProgress",
  27. cancelButtonId : "btnCancel"
  28. },
  29. debug : false,
  30.  
  31. // Button settings
  32. button_image_url : appPath + "/js/lib/SWFUpload/images/uploadall.png",
  33. button_width : "61",
  34. button_height : "22",
  35. button_placeholder_id : "spanButtonPlaceHolder",
  36. button_text : '<span class="theFont"></span>',
  37. button_text_style : ".theFont { font-size: 16; }",
  38. button_text_left_padding : 12,
  39. button_text_top_padding : 3,
  40. button_action : SWFUpload.BUTTON_ACTION.SELECT_FILE,
  41.  
  42. // The event handler functions are defined in handlers.js
  43. file_queued_handler : fileQueued,
  44. file_queue_error_handler : fileQueueError,
  45. file_dialog_complete_handler : fileDialogComplete,
  46. upload_start_handler : uploadStart,
  47. upload_progress_handler : uploadProgress,
  48. upload_error_handler : uploadError,
  49. upload_success_handler : uploadPicSuccess,
  50. upload_start_handler : uploadStartFn,
  51. upload_complete_handler : uploadComplete,
  52. queue_complete_handler : queueComplete
  53. // Queue plugin event
  54. });
  55. });
  56. </script>
  57. <table class="queryTable">
  58. <tr>
  59. <td class="queryTitle" width="80px">微信团名称</td>
  60. <td class="queryContent" ><input class="inputText" type="text" id="weixinName" /></td>
  61. <td class="queryTitle" width="80px">开始时间</td>
  62. <td class="queryContent"><input class="inputText easyui-datetimebox" type="text" id="startTime"/></td>
  63. <td class="queryTitle" width="80px">结束时间</td>
  64. <td class="queryContent"><input class="inputText easyui-datetimebox" type="text" id="endTime"/></td>
  65. </tr>
  66. <tr>
  67. <td class="queryTitle" width="80px">活动状态</td>
  68. <td class="queryContent">
  69. <select class="inputText easyui-combobox" id="isStatus" style="width: 150px" panelHeight="auto">
  70. <option value="">请选择</option>
  71. <c:forEach var="weixinStatus" items="${weixinStatusList }">
  72. <option value="${weixinStatus }">${weixinStatus.code }</option>
  73. </c:forEach>
  74. </select>
  75. </td>
  76. <td class="queryTitle" width="80px">起团人数</td>
  77. <td class="queryContent" >
  78. <input class="easyui-numberbox" type="text" id="minimumJoinMemberNum" /></td>
  79.  
  80. <td class="queryContent" colspan="8" align="right"><a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-search" onclick="doQuery()">搜索</a></td>
  81. </td>
  82. </tr>
  83. </table>
  84.  
  85. <table id="deliveryGrid"></table>
  86.  
  87. <div id="opreateHtml" class="easyui-window" title="" iconCls="icon-edit" style="width:320px; height:450px;text-align:center; background: #fafafa;margin:0 auto;">
  88. <div class="easyui-layout" fit="true">
  89. <div region="center" border="false" style="background:#fff;border:1px solid #ccc;">
  90. <form id="form_edit" method="post" name="form_activity">
  91. <input type="hidden" id="idHidden" name="idHidden" value="" />
  92. <table class="queryTable" width="100%">
  93. <tr>
  94. <td class="queryTitle" width="100">微信团名称</td>
  95. <td class="queryContent" >
  96. <input class="inputText" type="text" id="addweixinName" style="width: 150px" />
  97. </td>
  98. </tr>
  99. <tr>
  100. <td class="queryTitle" width="100">banner图片</td>
  101. <td class="queryContent" >
  102. <div style="width: 500px; height: auto;">
  103. <div id="fsUploadDiv">
  104. <span id="spanButtonPlaceHolder"></span>
  105. <div id="content">
  106. <div id="divStatus"></div>
  107. <div id="fsUploadProgress"></div>
  108. <input id="btnCancel" type="button" value="Cancel All Uploads"
  109. onclick="swfu.cancelQueue();" disabled="disabled"
  110. style="margin-left: 2px; font-size: 8pt; height: 25px; display: none" />
  111. <span id="batchNoUploadId" style="display: none;"></span>
  112. </div>
  113. </div>
  114. <input type="hidden" id="imgUrlHidden" >
  115. <div id="fileList" style="margin-top: 10px; padding-top:10px; font-size: 13px; width:750px">
  116. </div>
  117. </div>
  118. </td>
  119. </tr>
  120.  
  121. <tr>
  122. <td class="queryTitle" width="100">开始时间</td>
  123. <td class="queryContent" >
  124. <input class="inputText easyui-datetimebox" type="text" id="addstartTime" />
  125. </td>
  126. </tr>
  127.  
  128. <tr>
  129. <td class="queryTitle" width="100">结束时间</td>
  130. <td class="queryContent" >
  131. <input class="inputText easyui-datetimebox" type="text" id="addendTime" />
  132. </td>
  133. </tr>
  134. <tr>
  135. <td class="queryTitle" width="100">团购价格</td>
  136. <td class="queryContent" >
  137. <input class="easyui-numberbox" type="text" min="0.01" max="100000000" precision="2" id="addgroupPrice" style="width: 150px" /><font color="black">&nbsp;元</font>
  138. </td>
  139. </tr>
  140. <tr>
  141. <td class="queryTitle" width="100">折扣标签</td>
  142. <td class="queryContent" >
  143. <input class="easyui-numberbox" type="text" min="0.01" max="100000000" precision="2" id="adddiscountLab" style="width: 150px"/> <font color="black">&nbsp;折</font>
  144. </td>
  145. </tr>
  146. <tr>
  147. <td class="queryTitle" width="100">起团人数</td>
  148.  
  149. <td class="queryContent" >
  150.  
  151. <input class="easyui-numberbox" type="text" id="addminimumJoinMemberNum" style="width: 150px"/>&nbsp;人数
  152.  
  153. <div style="float:right" ><font color="red"> * 起团人数 上限99 下限2 </font></div>
  154. </td>
  155. </tr>
  156. <tr>
  157. <td class="queryTitle" width="100">团长开团等待时间</td>
  158. <td class="queryContent" >
  159. <input class="inputText" type="text" id="addbeginWaitTime" style="width: 150px" />&nbsp;小时
  160. <div style="float:right" ><font color="red"> * 团长开团等待时间 必须是24的倍数 上限120</font></div>
  161. </td>
  162. </tr>
  163. <tr>
  164. <td class="queryTitle" width="100">手动排序</td>
  165. <td class="queryContent" >
  166. <input class="easyui-numberbox" precision="0" type="text" id="addorderBy" style="width: 150px"/>
  167. </td>
  168. </tr>
  169. <tr>
  170. <td class="queryTitle" width="80px">活动状态</td>
  171. <td class="queryContent">
  172. <select class="inputText easyui-combobox" id="addisStatus" style="width: 150px" panelHeight="auto">
  173. <c:forEach var="weixinStatus" items="${weixinStatusList }">
  174. <option value="${weixinStatus }">${weixinStatus.code }</option>
  175. </c:forEach>
  176. </select>
  177. </td>
  178. </tr>
  179. </table>
  180. </form>
  181. </div>
  182. <div region="south" border="false"
  183. style="text-align: center; height: 30px; line-height: 30px;">
  184. <a class="easyui-linkbutton" iconCls="icon-ok"
  185. href="javascript:void(0)" onclick="save()">保存</a> <a
  186. class="easyui-linkbutton" iconCls="icon-cancel"
  187. href="javascript:void(0)" onclick="closeWin();">关闭</a>
  188. </div>
  189. </div>
  190. </div>
  1. //var btn;
  2. /**
  3. *
  4. * 获取当前时间
  5. */
  6. function p(s) {
  7. return s < 10 ? '0' + s: s;
  8. }
  9.  
  10. var myDate = new Date();
  11. //获取当前年
  12. var year=myDate.getFullYear();
  13. //获取当前月
  14. var month=myDate.getMonth()+1;
  15. //获取当前日
  16. var date=myDate.getDate();
  17. var h=myDate.getHours(); //获取当前小时数(0-23)
  18. var m=myDate.getMinutes(); //获取当前分钟数(0-59)
  19. var s=myDate.getSeconds();
  20.  
  21. var now=year+'-'+p(month)+"-"+p(date)+" "+p(h)+':'+p(m)+":"+p(s);
  22.  
  23. $(function() {
  24. createParentHiddenDom("frameName");
  25. if (window.opener) {
  26. parentWindow = window.opener;
  27. } else {
  28. parentWindow = window.parent;
  29. }
  30. $('#addstartTime').datetimebox({
  31. showSeconds : false,
  32. editable : false
  33. });
  34. $('#addendTime').datetimebox({
  35. showSeconds : false,
  36. editable : false
  37. });
  38.  
  39. // alert(now);
  40. $("#opreateHtml").window("close");
  41. $("#deliveryGrid")
  42. .datagrid(
  43. {
  44. url : appPath + "/page/weixinActivityAct/getPage",
  45. height : "full",
  46. striped : true,
  47. remoteSort : false,
  48. pagination : true,
  49. rownumbers : true,
  50. singleSelect : false,
  51. queryParams : getQueryParam(),
  52. frozenColumns : [ [
  53. {
  54. field : "ck",
  55. checkbox : true
  56. },
  57. {
  58. field : "opt",
  59. title : "操作",
  60. width : 100,
  61. align : "left",
  62. formatter : function(value, rowData,
  63. rowIndex) {
  64. var html = "";
  65. // #12579修正
  66. if (rowData.isStatus != "stopped" && rowData.isStatus != "finished"){
  67. html += "<img class='op-enable' src='"+ appPath+ "/js/lib/jquery-easyui/themes/icons/pencil.png' onClick=\'showWin("+ rowData.weixinId+","+"\""+rowData.isStatus+"\""+")' title='编辑'/>&nbsp;&nbsp;";
  68. }else {
  69. html += "<img class='op-enable' style='visibility:hidden' src='"+ appPath+ "/js/lib/jquery-easyui/themes/icons/pencil.png' onClick=\'showWin("+ rowData.weixinId+","+"\""+rowData.isStatus+"\""+")' title='编辑'/>&nbsp;&nbsp;";
  70. }
  71. if (rowData.isStatus != "stopped" && rowData.isStatus != "finished" && rowData.isStatus != "activated"){
  72. html += "<img class='op-enable' src='"+ appPath+ "/js/lib/jquery-easyui/themes/icons/reset-pass.png' onClick='showDetail("+ rowData.weixinId+ ")' title='微信团管理'/>&nbsp;&nbsp;";
  73. }else {
  74. html += "<img class='op-enable' style='visibility:hidden' src=' "+ appPath+ "/js/lib/jquery-easyui/themes/icons/reset-pass.png' onClick='showDetail(" + rowData.weixinId+ ")' title='微信团管理'/>&nbsp;&nbsp;";
  75. }
  76. html += "<img class='op-enable' src='"+ appPath+ "/js/lib/jquery-easyui/themes/icons/cancel.png' onClick='deletes("+ rowData.weixinId+ ")' title='删除'/>&nbsp;&nbsp;";
  77. return html;
  78. }
  79. } ] ],
  80. columns : [ [ {
  81. field : 'weixinId',
  82. title : '微信ID',
  83. width :80,
  84. align : 'center',
  85. sortable : true
  86. }, {
  87. field : 'groupPrice',
  88. title : '团价格',
  89. width : 120,
  90. align : 'center',
  91. sortable : true,
  92. formatter:
  93. function(value){
  94. if(!isNaN(Number(value))){
  95. return Number(value).toFixed(2)
  96. }
  97. }
  98.  
  99. }, {
  100. field : 'weixinName',
  101. title : '微信团名称',
  102. width : 120,
  103. align : 'center',
  104. sortable : true
  105. }, {
  106. field : 'startTime',
  107. title : '开始时间',
  108. width : 100,
  109. align : 'left',
  110. sortable : true
  111. }, {
  112. field : 'endTime',
  113. title : '结束时间',
  114. width : 100,
  115. align : 'left',
  116. sortable : true
  117. }, {
  118. field : 'chooseN',
  119. title : 'X选一',
  120. width : 80,
  121. align : 'center',
  122. sortable : true
  123.  
  124. }, {
  125. field : 'beginWaitTime',
  126. title : '团长开团等待时间',
  127. width : 120,
  128. align : 'center',
  129. sortable : true
  130. }, {
  131. field : 'minimumJoinMemberNum',
  132. title : '起团人数',
  133. width : 100,
  134. align : 'center',
  135. sortable : true
  136. },
  137.  
  138. {
  139. field : 'isStatus',
  140. title : '活动状态',
  141. width : 120,
  142. align : 'center',
  143. sortable : true,
  144. formatter : function(value, rowData, rowIndex) {
  145. var strReturn = "";
  146. if (rowData.isStatus == 'nonactivated') {
  147. //strReturn = '未激活';
  148. return ("<font color=black> "+strReturn +"未激活</font>");
  149. } else if (rowData.isStatus == 'activated') {
  150. //strReturn = '激活';
  151. return ("<font color=green> "+strReturn +"激活</font>");
  152. } else if (rowData.isStatus == 'stopped') {
  153. //strReturn = '停用';
  154. return ("<font color=red> "+strReturn +"强制停止</font>");
  155. } else if (rowData.isStatus == 'finished') {
  156. //strReturn = '已结束';
  157. return ("<font color=red> "+strReturn +"已结束</font>");
  158. }
  159. //return strReturn;
  160. }
  161. }, ] ],
  162. toolbar : [ {
  163. id : 'btnadd',
  164. text : '新增微信团',
  165. iconCls : 'icon-add',
  166. handler : function() {
  167. showWin(null,null);
  168. }
  169. } ]
  170. });
  171. });
  172.  
  173. // 查询条件
  174. function getQueryParam() {
  175. var weixinActivity = new Object();
  176. weixinActivity.weixinName = $.trim($("#weixinName").val());
  177. weixinActivity.isStatus = $('#isStatus').combobox("getValue");
  178. weixinActivity.startTime = $("#startTime").datebox("getValue");
  179. weixinActivity.endTime = $("#endTime").datebox("getValue");
  180.  
  181. weixinActivity.minimumJoinMemberNum = $.trim($("#minimumJoinMemberNum")
  182. .val());
  183.  
  184. return weixinActivity;
  185. }
  186.  
  187. function doQuery() {
  188.  
  189. if (($("#minimumJoinMemberNum").val() < 2 || $("#minimumJoinMemberNum")
  190. .val() > 99)
  191. && $("#minimumJoinMemberNum").val() != 0) {
  192. $.messager.alert('提示', "起团人数在2~~99之间", 'info');
  193. return;
  194. }
  195. $("#deliveryGrid").datagrid('load', getQueryParam());
  196. }
  197.  
  198. /**
  199. * 编辑
  200. *
  201. * @param id
  202. */
  203. function showWin(id,isStatus) {
  204. if (id != null && isStatus!=null) {
  205. // 不同的活动状态不同的编辑字段
  206. if(isStatus !=null){
  207. if (isStatus == 'finished'||isStatus=='stopped' ) {
  208. $.messager.alert('提示', "此活动状态不可编辑", 'info');
  209. return;
  210. }
  211. if (isStatus =='activated') {
  212. $("#addstartTime").datetimebox("disable");
  213. $("#addendTime").datetimebox("disable");
  214. $("#form_edit").find("input[id=addweixinName]").attr(
  215. "disabled", "disabled");
  216. //隐藏照片的上传按钮
  217. $("#fsUploadDiv").css("display","none");
  218. $("#form_edit").find("input[id=addgroupPrice]").attr(
  219. "disabled", "disabled");
  220. $("#form_edit").find("input[id=adddiscountLab]").attr(
  221. "disabled", "disabled");
  222. $("#form_edit").find("input[id=addminimumJoinMemberNum]").attr(
  223. "disabled", "disabled");
  224. $("#form_edit").find("input[id=addbeginWaitTime]").attr(
  225. "disabled", "disabled");
  226. $("#form_edit").find("input[id=addorderBy]").attr("disabled",
  227. "disabled");
  228. }else{
  229. $("#fsUploadDiv").css("display","block");
  230. $("#addstartTime").datetimebox("enable");
  231. $('#addendTime').datetimebox("enable");
  232. $('#addweixinName').removeAttr("disabled");
  233. $('#addgroupPrice').removeAttr("disabled");
  234. $('#adddiscountLab').removeAttr("disabled");
  235. $('#addminimumJoinMemberNum').removeAttr("disabled");
  236. $('#addbeginWaitTime').removeAttr("disabled");
  237. $('#addorderBy').removeAttr("disabled");
  238. }
  239. }
  240. }else{
  241. $("#fsUploadDiv").css("display","block");
  242. $("#addstartTime").datetimebox("enable");
  243. $('#addendTime').datetimebox("enable");
  244. $('#addweixinName').removeAttr("disabled");
  245. $('#addgroupPrice').removeAttr("disabled");
  246. $('#adddiscountLab').removeAttr("disabled");
  247. $('#addminimumJoinMemberNum').removeAttr("disabled");
  248. $('#addbeginWaitTime').removeAttr("disabled");
  249. $('#addorderBy').removeAttr("disabled");
  250.  
  251. }
  252. /**
  253. * 三种方法移除disabled属性
  254. * $('#form_edit').attr("enable",true);
  255. * $('#form_edit').attr("disabled",false);
  256. * $('#addweixinName').removeAttr("disabled");
  257. * $('#form_edit').attr("disabled","");
  258. */
  259. $("#fileList").html("");
  260. $("#idHidden").val("");
  261. $("#adddiscountLab").val("");
  262. $("#addweixinName").val("");
  263. // 团长开团等待时间 #12327 修复
  264. $("#addbeginWaitTime").val("24");
  265.  
  266. $("#addgroupPrice").val("");
  267. $("#addminimumJoinMemberNum").val("");
  268. $("#addstartTime").datebox("setValue","");
  269. $("#addendTime").datebox("setValue","");
  270. // $("#addbeginTime").datebox("setValue","");
  271. // $("#addendTime").datebox("setValue","");
  272. $("#addorderBy").val("");
  273. $("#addisStatus").combobox("setValue", 'nonactivated');
  274. $("#imgUrlHidden").val("");
  275.  
  276. var iconStr = "icon-add";
  277. var title = "新增微信团";
  278. var urlList;
  279. if (id != null) {
  280. iconStr = "icon-edit";
  281. title = "编辑微信团";
  282. $.post(appPath + "/page/weixinActivityAct/getBean/" + id, {}, function(
  283. data) {
  284. $("#idHidden").val(data.weixinId);
  285. $("#adddiscountLab").val(data.discountLab);
  286. $("#addweixinName").val(data.weixinName);
  287. $("#addbeginWaitTime").val(data.beginWaitTime);
  288. $("#addgroupPrice").val(data.groupPrice);
  289. $("#addminimumJoinMemberNum").val(data.minimumJoinMemberNum);
  290. // $("#addbeginTime").datebox("setValue",data.beginTime);
  291. $("#addendTime").datebox("setValue", data.endTime);
  292. $("#addstartTime").datebox("setValue", data.startTime);
  293. $("#addTimeweixin").val(data.addTimeweixin);
  294. $("#addorderBy").val(data.sortBy);
  295. $("#addisStatus").combobox('setValue', data.isStatus);
  296.  
  297. // $("#editWeixinStatus").val(data.editWeixinStatus);
  298. $("#editWeixinStatus").val(data.isStatus);
  299. if (data.bannerImgUrl != null && data.bannerImgUrl !=""){
  300. $("#imgUrlHidden").val(data.bannerImgUrl+";");
  301. //获取Img标签Url
  302. urlList = data.bannerImgUrl.split(';');
  303. }
  304. if(urlList!=null && urlList!=''){
  305. for (var i=0;i<urlList.length;i++){
  306. // 获取当前时间作为随机值,用于img标签ID
  307. var randomVal = getTimestamp();
  308. //读取每个Url,并创建Img标签
  309. $("#fileList")
  310. .append("<div id = 'div"+randomVal+"' style='display: inline'><img id='img"+ randomVal+ "' style='border: solid 1px #ccc; padding: 3px; width: 70px; height: 50px; cursor: hand;' /> " +
  311. "<a id='a"+randomVal+"' href='javascript:void(0)' onclick='deleteImg(this)'>删除</a>&nbsp;&nbsp;</div>");
  312. //设置Src属性
  313. $("#img" + randomVal).attr("src", urlList[i]);
  314. }
  315. //激活状态下,隐藏删除<a>标签
  316. if (isStatus =='activated') {
  317. $("#form_edit a").hide();
  318. }else{
  319. $("#form_edit a").show();
  320. }
  321. }
  322. }, "json");
  323.  
  324. }
  325. $('#opreateHtml').window({
  326. title : title,
  327. iconCls : iconStr,
  328. width : 888,
  329. height : 500,
  330. left : 200,
  331. modal : true,
  332. shadow : true,
  333. collapsible : false,
  334. minimizable : false,
  335. maximizable : false
  336. });
  337. $('#opreateHtml').window('move', {
  338. top : 20
  339. });
  340.  
  341. $('#opreateHtml').window('open');
  342. }
  343.  
  344. function closeWin(id) {
  345. $('#opreateHtml').window('close');
  346. }
  347.  
  348. function save() {
  349. var weixinActivity = new Object();
  350. if ($("#idHidden").val() != null && $("#idHidden").val() != "") {
  351. weixinActivity.weixinId = $("#idHidden").val();
  352. }
  353.  
  354. if ($("#addweixinName").val() == null || $("#addweixinName").val() == "") {
  355. $.messager.alert('提示', "微信团名称不能为空", 'info');
  356. return;
  357. }
  358. // 上传图片 最多上传5张
  359.  
  360. if ($("#imgUrlHidden").val() == null || $("#imgUrlHidden").val() == "") {
  361. $.messager.alert('提示', "图片不能为空", 'info');
  362. return;
  363. }
  364.  
  365. if ($("#addstartTime").datebox("getValue") == null
  366. || $("#addstartTime").datebox("getValue") == "") {
  367. $.messager.alert('提示', "开始时间不能为空", 'info');
  368. return;
  369. }
  370. if ($("#addendTime").datebox("getValue") == null
  371. || $("#addendTime").datebox("getValue") == "") {
  372. $.messager.alert('提示', "结束时间不能为空", 'info');
  373. return;
  374. }
  375.  
  376. if ($("#addstartTime").datebox("getValue") >= $("#addendTime").datebox(
  377. "getValue")) {
  378. $.messager.alert('提示', "开始时间不能大于结束时间", 'info');
  379. return;
  380. }
  381. //开始时间不能大于提交时间
  382. if(weixinActivity.weixinId ==null || weixinActivity.weixinId ==""){
  383. if($("#addstartTime").datebox("getValue")<= now){
  384. $.messager.alert('提示', "开始时间不能小于提交时间", 'info');
  385. return;
  386. }
  387. }
  388.  
  389. if ($("#addgroupPrice").val() == null || $("#addgroupPrice").val() == "" || $("#addgroupPrice").val()==0) {
  390. $.messager.alert('提示', "微信团价格不能为空且不能为0", 'info');
  391. return;
  392. }
  393. if ($("#adddiscountLab").val() == null || $("#adddiscountLab").val() == "") {
  394. $.messager.alert('提示', "折扣标签不能为空", 'info');
  395. return;
  396. }
  397. // 起团人数
  398. if ($("#addminimumJoinMemberNum").val() == null
  399. || $("#addminimumJoinMemberNum").val() == "") {
  400. $.messager.alert('提示', "起团人数不能为空", 'info');
  401. return;
  402. }
  403. if ($("#addminimumJoinMemberNum").val() < 2
  404. || $("#addminimumJoinMemberNum").val() > 99) {
  405. $.messager.alert('提示', "起团人数正在2~~99", 'info');
  406. return;
  407. }
  408. // 团长开团等待时间 必须是24的倍数 且上限是120
  409. if ($("#addbeginWaitTime").val() == null
  410. || $("#addbeginWaitTime").val() == "") {
  411. $.messager.alert('提示', "团长开团等待时间不能为空", 'info');
  412. return;
  413. }
  414. if ($("#addbeginWaitTime").val() % 24 != 0
  415. || $("#addbeginWaitTime").val() == 0
  416. || $("#addbeginWaitTime").val() > 121) {
  417. $.messager.alert('提示', "团长开团等待时间必须是24的倍数且不能为0且最大不能超过120", 'info');
  418. return;
  419. }
  420.  
  421. // if ($("#addorderBy").val() == null || $("#addorderBy").val() == "") {
  422. // $.messager.alert('提示', "手动排序不能为空", 'info');
  423. // return;
  424. // }
  425.  
  426. /**
  427. * 只有活动状态是激活状态,且已经达到开始时间但是未达到结束时间,这时才可以将活动状态修改为强制停止
  428. */
  429. if(!(($("#addstartTime").datebox("getValue") <= now && $("#addendTime").datebox("getValue")> now && $('#editWeixinStatus').val()=='activated' ))&&$("#addisStatus").combobox("getValue")=='stopped')
  430. {
  431. $.messager.alert('提示', "只有活动状态是激活状态,且已经达到开始时间但是未达到结束时间,这时才可以将活动状态修改为强制停止", 'info');
  432. return;
  433. }
  434.  
  435. // if( $('#editWeixinStatus').val()!='activated' && $("#addisStatus").combobox("getValue")=='stopped' ){
  436. // $.messager.alert('提示', "只有激活状态下才能改为强制停止", 'info');
  437. // return;
  438. // }
  439.  
  440. weixinActivity.weixinId = $("#idHidden").val();
  441. weixinActivity.weixinName = $("#addweixinName").val();
  442. weixinActivity.bannerImgUrl = $("#imgUrlHidden").val().substring(0,$("#imgUrlHidden").val().lastIndexOf(";"));
  443. weixinActivity.startTime = $("#addstartTime").datebox("getValue");
  444. weixinActivity.addTimeweixin = $("#addTimeweixin").val();
  445. weixinActivity.endTime = $("#addendTime").datebox("getValue");
  446. weixinActivity.groupPrice = $("#addgroupPrice").val();
  447. weixinActivity.discountLab = $("#adddiscountLab").val();
  448. weixinActivity.minimumJoinMemberNum = $("#addminimumJoinMemberNum").val();
  449. weixinActivity.beginWaitTime = $("#addbeginWaitTime").val();
  450. weixinActivity.sortBy = $("#addorderBy").val();
  451. weixinActivity.isStatus = $("#addisStatus").combobox("getValue");
  452.  
  453. doAjax({
  454. url : appPath + '/page/weixinActivityAct/saveOrUpdate',
  455. type : 'post',
  456. data : weixinActivity,
  457. success : function(data) {
  458. if (data == "ok") {
  459. $.messager.alert('提示', "保存成功", 'info');
  460. $('#opreateHtml').window('close');
  461. doQuery();
  462. } else {
  463. $.messager.alert('提示', data, 'info');
  464. }
  465. }
  466. });
  467. }
  468.  
  469. function deletes(weixinId) {
  470. if (!weixinId) {
  471. $.messager.alert('提示信息', '微信ID异常', 'info');
  472. return;
  473. }
  474. $.messager.confirm('提示信息', '删除会连带其下的商品数据一并删除,你可要想好了?', function(r) {
  475. if (r) {
  476. doAjax({
  477. url : appPath + "/page/weixinActivityAct/deleteData",
  478. type : "post",
  479. data : {
  480. "weixinId" : weixinId
  481. },
  482. success : function(data) {
  483. switch (data) {
  484. case "ok":
  485. $("#deliveryGrid").datagrid('reload');
  486. break;
  487. default:
  488. $.messager.alert('提示信息', '抱歉,失败了', 'error');
  489. break;
  490. }
  491. },
  492. error : function(XMLHttpRequest, textStatus, errorThrown) {
  493. $.messager.alert('提示信息', '抱歉,出错了' + textStatus, 'error');
  494. }
  495. });
  496. }
  497. });
  498. }
  499.  
  500. /*******************************************************************************
  501. * 查看明细
  502. *
  503. * @param weixinId
  504. */
  505. function showDetail(weixinId) {
  506.  
  507. $(parentWindow.document).find("#frameName").val($(self).attr("name"));
  508. parentWindow.addTab("微信团商品管理页面", appPath
  509. + "/page/weixinActivityAct/toPage?weixinId=" + weixinId, "", true,
  510. "weixinActivityFrame");
  511. }
  512.  
  513. /*******************************************************************************
  514. * 上传并提交到后台前调用的方法
  515. */
  516. function uploadStartFn(file) {
  517. var checkRes = true;
  518. var urlList = $("#imgUrlHidden").val().substring(0,$("#imgUrlHidden").val().lastIndexOf(";")).split(';');
  519. if (urlList.length == 5) {
  520. $.messager.alert("提示信息", "照片最多只能上传5张", "info");
  521. checkRes = false;
  522. }
  523.  
  524. // check不通过是,取消队列
  525. if (!checkRes) {
  526. // 取消当前队列的文件
  527. swfUploadObj.cancelUpload(file.id, true);
  528. return false;
  529. }
  530.  
  531. // 开始提交
  532. swfUploadObj.startUpload();
  533. }
  534.  
  535. /*******************************************************************************
  536. * 上传图片成功返回事件
  537. */
  538. function uploadPicSuccess(file, serverData) {
  539. try {
  540. try {
  541. // 自定义返回信息,并在状态栏显示,如需使用此功能,response.getWriter().write("{code:0,msgType:'XXX'}")
  542. // code为0:成功,code为-1,失败
  543. serverData = eval("(" + serverData + ")");
  544. if (typeof (serverData.code) != "undefined" && serverData.code != 0) {
  545. this.uploadError(file, serverData.code, serverData.msg);
  546. } else {
  547. var path = serverData.newFileName;
  548. // 获取当前时间作为随机值,用于img标签ID
  549. var randomVal = getTimestamp();
  550.  
  551. // 追加img标签,显示上传的图片
  552. $("#fileList")
  553. .append("<div id = 'div"+randomVal+"' style='display: inline'><img id='img"+ randomVal+ "' style='border: solid 1px #ccc; padding: 3px; width: 70px; height: 50px; cursor: hand;' /> " +
  554. "<a id='a"+randomVal+"' href='javascript:void(0)' onclick='deleteImg(this)'>删除</a>&nbsp;&nbsp;</div>");
  555. $("#img" + randomVal).attr("src", "https://img.j1.com" + path);
  556.  
  557. // 获取图片URL隐藏域
  558. var imgUrl = $("#imgUrlHidden").val();
  559. // ";"分割
  560. $("#imgUrlHidden").val(imgUrl+"https://img.j1.com" + path+";");
  561.  
  562. var progress = new FileProgress(file,
  563. this.customSettings.progressTarget);
  564. progress.setComplete();
  565. progress.setStatus("完成.");
  566. progress.toggleCancel(false);
  567. }
  568. } catch (e) {
  569. var progress = new FileProgress(file,
  570. this.customSettings.progressTarget);
  571. progress.setComplete();
  572. progress.setStatus("完成.");
  573. progress.toggleCancel(false);
  574. }
  575. } catch (ex) {
  576. this.debug(ex);
  577. }
  578. }
  579.  
  580. // 获取时间戳
  581. function getTimestamp() {
  582. return (new Date()).valueOf();
  583. }
  584.  
  585. //删除已上传图片
  586. function deleteImg(a){
  587. //根据<a>标签id获取div、img标签ID
  588. var divId = "div"+a.id.substring(1);
  589. var imgId = "img" + a.id.substring(1);
  590.  
  591. //获取img标签src属性值
  592. var imgSrc=$("#"+imgId).attr("src");
  593. //
  594. $("#imgUrlHidden").val($("#imgUrlHidden").val().replace(imgSrc+";",""));
  595.  
  596. //删除整个div标签(包含img、a)
  597. $("#"+divId).remove();
  598. }

Jquery之编辑不可修改的更多相关文章

  1. 零基础学习java------35---------删除一个商品案例,删除多个商品,编辑(修改商品信息),校验用户名是否已经注册(ajax)

    一. 删除一个商品案例 将要操作的表格 思路图  前端代码 <%@ page language="java" contentType="text/html; cha ...

  2. ArcGIS学习记录—属性表的编辑与修改

    原文地址: ArcGIS问题:属性表的编辑与修改 - Silent Dawn的日志 - 网易博客 http://gisman.blog.163.com/blog/static/344933882009 ...

  3. jquery.ui.accordion的修改(支持展开多个)

    原文:jquery.ui.accordion的修改(支持展开多个) 背景:原jquery.ui.accordion插件,最多只能展开一个,不能展开多个,后来在网上找到了一个基于它的一个修改版(http ...

  4. 基于jQuery会员中心安全修改表单代码

    基于jQuery会员中心安全修改表单代码.这是一款登录密码,交易密码,手机号码,实名认证,电子邮箱,安全设置表单,会员表单等设置代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: ...

  5. 原生JS的使用,包括jquery和原生JS获取节点、jquery和原生JS修改属性的比较

    一.前言 相比于JS这条直达终点.满是荆棘的小路,jquery无疑是康庄大道了,足够的简洁.易用给了它辉煌的地位.然而,毕竟是绕着道的插件,当小路走着走着变成大路的时候,曾经的大路也就失去了他自身的优 ...

  6. 自制jquery可编辑的下拉框

    昨天看到QQ登录的时候,可以选择以前登录过的账户,这个东西也可以在网站登录的时候用到,所以我就想做一个这样的插件:在网上查了很多,没有找到合适自己的,所以决定自动制作一个. 原理就是一个textbox ...

  7. JQuery中如何动态修改input的type属性

    代码如下: jQuery(".member_id").focus(function() { jQuery(this).val(''); }).blur(function() { i ...

  8. jquery分页插件的修改

    前言 最近分页功能使用的比较多,所以从网上下载个jquery分页插件来使用, 之前用的都挺好的,直到昨天出现了逻辑问题,反复查看自己的代码,最后发现是点击页码后执行了多个点击事件.最后只有自己查看源码 ...

  9. Eclipse多行同时进行编辑,可编辑或修改相同内容

    使用Shift+Alt+A可以进入Eclipse多行编辑的功能,选中的一部分区域从光标开始处同时进行修改或者插入功能. 再次按下Shift+Alt+A可已退出该编辑模式.

随机推荐

  1. MS SQL自定义函数IsPositiveInteger MS SQL自定义函数IsNumeric 水晶报表使用IEnumerable<T>数据源

    MS SQL自定义函数IsPositiveInteger   判断字符串是否为正整数,0开始的的数字不算. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON ...

  2. Spring Cloud(三):服务提供与调用

    上一篇文章我们介绍了eureka服务注册中心的搭建,这篇文章介绍一下如何使用eureka服务注册中心,搭建一个简单的服务端注册服务,客户端去调用服务使用的案例. 案例中有三个角色:服务注册中心.服务提 ...

  3. AngularJS 常用模块书写建议

    本文是依据 Angular Style Guide 对 Angular 常用模块书写建议的翻译和总结,仅供参考. IIFE 使用 立即执行函数表达式(Immediately Invoked Funct ...

  4. 【Android】13.3 使用SQLite.NET-PCL访问SQLite数据库

    分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 本章开头已经说过了,SQLite.NET-PCL用起来很爽,这一节咱们看看怎样使用吧. 二.示例3运行截图 下面左 ...

  5. Nginx - rewrite 不区分大小写进行匹配

    Nginx - rewrite 不区分大小写进行匹配 分类: Nginx2014-05-28 19:25 1046人阅读 评论(0) 收藏 举报 Use (?i) to match case-inse ...

  6. error: invalid use of incomplete type

    一般出现这种情况都是没有将用到的头文件包含进来 我的情况是在头文件中定义了一个QMenu的指针,在源文件中使用menuBar()函数来返回一个menu指针.我在源文件中包含了文件<QtGui&g ...

  7. C++链接ODBC数据源:VS2013,Access

    参考资料:1.http://wenku.baidu.com/view/a92d1a812cc58bd63186bd8d.html 2.http://blog.sina.com.cn/s/blog_68 ...

  8. 实例37foreach遍历数组

    package test; import java.util.List; import java.util.ArrayList; import java.util.Scanner; /** * @au ...

  9. nyoj16矩形嵌套(第一道dp关于dag的题目)

    http://acm.nyist.net/JudgeOnline/problem.php?pid=16 题意:有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c, ...

  10. linux中mysql安装的问题

    Starting MySQL.Manager of pid-file quit without updating file.[FAILED] 已解决 这是由于系统中/etc/my.cnf文件本身存在或 ...