📄 add_pro.jsp
字号:
<%@ page contentType="text/html;charset=utf-8"%>
<%@ taglib uri="/WEB-INF/tag-lib/FCKeditor.tld" prefix="FCK" %>
<%@ include file="../../include.jsp"%>
<%
session.removeAttribute("productAppendImg");
%>
<html>
<head>
<title>发布商品</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script language="javascript" src="../editor/fckeditor.js"></script>
<script language="javascript">
<!--
function getLength(){
var oEditor = FCKeditorAPI.GetInstance("detail_desc");
var oDOM = oEditor.EditorDocument;
var iLength ;
if(document.all){
iLength = oDOM.body.innerText.length;
}else{
var r = oDOM.createRange();
r.selectNodeContents(oDOM.body);
iLength = r.toString().length;
}
return(iLength);
}
function save()
{
var theForm = document.news;
if ( theForm.name.value=="")
{
alert("请填写商品名称");
}
else if ( theForm.cid.value==0)
{
alert("请选择商品货架");
}
else if ( theForm.short_desc.value!=""&&theForm.short_desc.value.length>255 )
{
alert("商品简介请勿超过255个字符");
}
else if ( theForm.img_b.value=="" )
{
alert("请上传清晰图");
showBMsg();
}
else if ( theForm.img_s.value=="" )
{
alert("请上传缩略图");
showSMsg();
}
else if ( theForm.keywords.value=="" )
{
alert("请填写关键词");
}
else if ( theForm.market_price.value=="" )
{
alert("请填写市场价格");
}
else if ( theForm.shop_price.value=="" )
{
alert("请填写商城价格");
}
else if ( getLength()==0 )
{
alert("请编辑详细介绍");
}
else
{
theForm.submit();
}
}
function showBMsg()
{
var result = window.showModalDialog('upload_b_if.jsp',window,"dialogWidth:20;dialogHeight:10;status:no;help:no");
if ( !(typeof result == 'undefined') )
{
document.news.img_b.value = result;
document.getElementById('b_yl').src = "<%=ConfigBean.getStringValue("systenFolder")%>.<%=ConfigBean.getStringValue("upload_pro_img")%>"+result;
}
}
function showSMsg()
{
var result = window.showModalDialog('upload_b_if.jsp',window,"dialogWidth:20;dialogHeight:10;status:no;help:no");
if ( !(typeof result == 'undefined') )
{
document.news.img_s.value = result;
document.getElementById('s_yl').src = "<%=ConfigBean.getStringValue("systenFolder")%>.<%=ConfigBean.getStringValue("upload_pro_img")%>"+result;
}
}
function leftChar()
{
charMaxLen = 255;
document.getElementById('left_char').innerHTML = charMaxLen-document.news.short_desc.value.length;
}
function checkAttribute(attribute)
{
if ( attribute=="" )
{
return(true);
}
var ct = attribute;
var ctA = ct.split("\r\n");
var flag = true;
for (i=0; i<ctA.length; i++)
{
tmpStr = ctA[i];
tmpStr = trim(tmpStr);
if ( tmpStr.indexOf("@")==-1 )
{
flag = false;
alert("万能属性格式不正确");
}
else if ( tmpStr.split("@")[0]=="" )
{
flag = false;
alert("万能属性格式不正确: "+tmpStr);
}
else if ( tmpStr.split("@")[1].indexOf(",")==-1 )
{
flag = false;
alert("万能属性格式不正确: "+tmpStr);
}
else if ( 1==1 )
{
optA = tmpStr.split("@")[1].split("|");
for (j=0; j<optA.length; j++)
{
if ( trim(optA[j]).indexOf(",")==-1 )
{
flag = false;
alert("万能属性格式不正确: "+tmpStr);
}
else if ( trim(optA[j])=="" )
{
flag = false;
alert("万能属性格式不正确: "+tmpStr);
}
}
}
}
return(flag);
}
function trim(str)
{
return(str.replace(/(^\s*)|(\s*$)/g, ""));
}
function discountPrice(shopPrice)
{
<%
DBRow levels[] = memberMgr.getAllMemberLevel();
for (int i=0; i<levels.length; i++)
{
%>
document.news.ml_price[<%=i%>].value = myRound(<%=levels[i].get("discount",0d)%>*shopPrice);
<%
}
%>
}
function myRound(num)
{
return(Math.round(num*100)/100.00);
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}
//-->
</script>
<link href="../../style.css" rel="stylesheet" type="text/css">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<br>
<table width="98%" border="0" align="center" cellpadding="2" cellspacing="0">
<form name="news" action="<%=ConfigBean.getStringValue("systenFolder")%>appController/addProduct" method="post">
<input type="hidden" name="img_s" value="">
<input type="hidden" name="img_b" value="">
<span id="product_append_img_span"></span>
<tr>
<td width="1263" bgcolor="#FFFFFF">
<table width="100%" border="0" align="center" cellpadding="1" cellspacing="0">
<tr>
<td align="right" valign="middle"><font color="#FF0000">商品名称</font></td>
<td height="19" valign="middle"> </td>
<td colspan="2"><input name="name" type="text" id="name" size="50"></td>
<td width="30%" valign="middle" class="bold-text"> </td>
</tr>
<tr>
<td align="right" valign="middle">商品编号</td>
<td height="28" valign="middle"> </td>
<td colspan="2"><input name="p_no" type="text" id="p_no"></td>
<td valign="top" class="alert-text"> </td>
</tr>
<tr>
<td align="right" valign="middle"><font color="#FF0000">商品货架</font></td>
<td height="28" valign="middle"> </td>
<td colspan="2"><select name="cid" id="select" onChange="document.news.short_desc.focus();">
<option value="0" selected>选择商品货架</option>
<%
DBRow treeRows[] = catalogMgr.getCatalogTree();
String qx;
for ( int i=0; i<treeRows.length; i++ )
{
if ( treeRows[i].get("parentid",0) != 0 )
{
qx = "├ ";
}
else
{
qx = "";
}
%>
<option value="<%=treeRows[i].getString("id")%>">
<%=Tree.makeSpace(" ",treeRows[i].get("level",0))%>
<%=qx%>
<%=treeRows[i].getString("title")%>
</option>
<%
}
%>
</select></td>
<td valign="top" class="alert-text"> </td>
</tr>
<tr>
<td align="right" valign="middle">商品简介</td>
<td height="28" valign="middle"> </td>
<td colspan="2">剩余可输入字符:<font color="#FF0000"><strong><span id="left_char">255</span></strong></font><br>
<textarea name="short_desc" cols="60" rows="10" id="short_desc" onKeyDown="leftChar()" onKeyUp="leftChar()" onChange="leftChar()"></textarea></td>
<td valign="top" class="alert-text">255个字符内</td>
</tr>
<tr>
<td align="right" valign="middle"><font color="#FF0000">关键词</font></td>
<td height="28" valign="middle"> </td>
<td width="39%"><input name="keywords" type="text" id="keywords"></td>
<td width="22%" rowspan="5" valign="middle"> </td>
<td valign="top" class="alert-text">与其他商品关联显示,格式:衣服,时尚</td>
</tr>
<tr>
<td align="right" valign="middle">商品状态</td>
<td height="28" valign="middle"> </td>
<td> <input name="alive" type="radio" value="1" checked>
上架
<input name="alive" type="radio" value="0">
下架 </td>
<td valign="top" class="alert-text">只有处于上架状态的商品才会在 商城显示</td>
</tr>
<tr>
<td align="right" valign="middle">商品群组</td>
<td height="28" valign="middle"> </td>
<td valign="top">
<%
DBRow proGroup[] = productMgr.getAllPGroup(null);
for (int i=0; i<proGroup.length; i++)
{
%>
<input name="pgid" type="checkbox" id="pgid" value="<%=proGroup[i].getString("pgid")%>">
<%=proGroup[i].getString("title")%>
<%
}
%>
</td>
<td valign="top" class="alert-text"> </td>
</tr>
<tr>
<td align="right" valign="middle"><font color="#FF0000">市场价格</font></td>
<td height="28" valign="middle"> </td>
<td><input name="market_price" type="text" id="market_price"></td>
<td valign="top" class="alert-text"> </td>
</tr>
<tr>
<td align="right" valign="middle"><font color="#FF0000">商城价格</font></td>
<td height="28" valign="middle"> </td>
<td><input name="shop_price" type="text" id="shop_price" onKeyDown="discountPrice(this.value)" onKeyUp="discountPrice(this.value)"></td>
<td valign="top" class="alert-text"> </td>
</tr>
<%
for (int i=0; i<levels.length; i++)
{
%>
<input type="hidden" name="mlid" value="<%=levels[i].getString("mlid")%>">
<tr>
<td align="right" valign="middle">
<%=levels[i].getString("level_name")%>
</td>
<td height="28" valign="middle"> </td>
<td><input name="ml_price" type="text" id="ml_price" value="0"> </td>
<td> </td>
<td class="alert-text"> </td>
</tr>
<%
}
%>
<tr>
<td align="right" valign="middle">万能属性</td>
<td height="28" valign="middle"> </td>
<td><textarea name="attribute" id="attribute" style="width:400px;height:200px"></textarea></td>
<td> </td>
<td class="alert-text">格式:属性名称@属性项目,附加价格(-表示减少)<br>
例如:颜色@黄色,5|红色,0|兰色,-5 <br>
每个属性占一行
<table width="304" height="177" border="0" cellpadding="0" cellspacing="1">
<tr align="center" valign="middle">
<td width="150" height="155"><img src="unupld.gif" id="b_yl" width="120" onClick="showBMsg()"></td>
<td width="151"><img src="unupld.gif" width="120" id="s_yl" onClick="showSMsg()"></td>
</tr>
<tr align="center" valign="middle">
<td height="19"><font color="#FF0000">清晰图预览</font></td>
<td height="19"><font color="#FF0000">缩略图预览</font></td>
</tr>
</table></td>
</tr>
<tr>
<td align="right" valign="middle">附加图片</td>
<td height="28" valign="middle"> </td>
<td colspan="3"><input name="Submit" type="button" onClick="MM_openBrWindow('upload_append_img.jsp','','scrollbars=yes,width=610,height=270')" value="添加商品附加图片"></td>
</tr>
<tr>
<td align="right" valign="middle"> </td>
<td height="28" valign="middle"> </td>
<td colspan="3"> </td>
</tr>
<tr>
<td width="8%" align="right" valign="middle"><font color="#FF0000">详细介绍</font></td>
<td width="1%" height="28" valign="middle"> </td>
<td colspan="3">
<FCK:editor id="detail_desc"
width="100%" height="500"
basePath="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/"%>"
imageBrowserURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector"%>"
linkBrowserURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/browser/default/browser.html?Connector=connectors/jsp/connector"%>"
flashBrowserURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/jsp/connector"%>"
imageUploadURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/upload/simpleuploader?Type=Image"%>"
linkUploadURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/upload/simpleuploader?Type=File"%>"
flashUploadURL="<%=ConfigBean.getStringValue("systenFolder")+"administrator/editor/editor/filemanager/upload/simpleuploader?Type=Flash"%>">
</FCK:editor>
</td>
</tr>
</table></td>
</tr>
</form>
</table>
<br>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="9%"> </td>
<td width="91%"><input name="submit" type="button" class="ofc-but" id="submit5" onClick="save()" value=" 保 存 "></td>
</tr>
</table>
<br>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -