쇼핑 몰 2 단계 요약 노트 1: 도움말 센터
<td align="center">
<a href="helper.aspx?title= "> </a>
</td>
aspx 코드:
<table width="100%" border="0">
<tr>
<td align="left" valign="top">
<ul class="aboutus">
<asp:Repeater ID="rep" runat="server">
<ItemTemplate>
<li><a href='helper.aspx?title=<%#Eval("title") %>'><%#Eval("title") %></a></li>//
</ItemTemplate>
</asp:Repeater>
</ul>
</td>
</tr>
<tr>
<td class="aboutus_td" height="35" bgcolor="#CCCCCC">
:
<asp:Literal ID="litH1" runat="server"></asp:Literal>
</td>
</tr>
<tr>
<td style="text-align: left; padding: 10px;">
<asp:Literal ID="litBody" runat="server"></asp:Literal>
</td>
</tr>
</table>
cs 코드:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace Web
{
public partial class aboutus : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//
rep.DataSource = new MyShop.DAL.NewsDAO().GetList("type=' '");
rep.DataBind();
string title=Request.QueryString["title"];
if (string.IsNullOrEmpty(title))
{
title = " ";
}
litH1.Text = title;
DataSet ds = new MyShop.DAL.NewsDAO().GetList("*","id","",1,1,"type=' ' and title='"+title+"'");
if (ds.Tables.Count>0&&ds.Tables[0].Rows.Count>0)// , 0
{
litBody.Text = ds.Tables[0].Rows[0]["body"].ToString();
}
}
}
}
}
3: 백 스테이지 통합:
새 배경 페이지 helpChange. aspx aspx 코드:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<br />
<asp:DropDownList ID="ddltitle" runat="server" AutoPostBack="true"
onselectedindexchanged="ddltitle_SelectedIndexChanged">
</asp:DropDownList>
<br />
<asp:TextBox ID="txtbody" TextMode="MultiLine" runat="server" Height="237px" Width="571px"></asp:TextBox>
<br />
<asp:Button ID="btnSave" runat="server" Text=" " onclick="btnSave_Click" />
<asp:Literal ID="litmsg" runat="server"></asp:Literal>
</form>
</body>
</html>
페이지 에서 드 롭 다운 목록 상 자 를 사용 하여 도움말 센터 의 하위 항목 을 표시 합 니 다. 아래 표 상자 의 사용 은 Repeater 컨트롤 과 유사 합 니 다.
드 롭 다운 목록 상자 사용:
1: 드 롭 다운 목록 상 자 를 더 블 클릭 하여 이 벤트 를 추가 하고 드 롭 다운 목록 상자 의 aspx 코드 에 추가 합 니 다. AutoPostBack = "true" 속성, 이벤트 의 반환 값 을 자동 으로 되 돌려 줍 니 다.
2: 디 스 플레이 필드 와 필드 값 을 바 인 딩 한 다음 드 롭 다운 목록 에 데이터 원본 을 바 인 딩 합 니 다.
3: 이벤트 코드 쓰기.
뉴스 DAO 에 함수 추가
// body ,
public void UpdateBody(string title, string body)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("update Shop_news set body=@body where type=' ' and title=@title");
Database db = DatabaseFactory.CreateDatabase();
DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
db.AddInParameter(dbCommand, "title", DbType.String, title);
db.AddInParameter(dbCommand, "body", DbType.AnsiString, body);
db.ExecuteNonQuery(dbCommand);
}
cs 코드:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace Web.admin
{
public partial class helpChange : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//
ddltitle.DataTextField = "title";//
ddltitle.DataValueField = "title";//
ddltitle.DataSource = new MyShop.DAL.NewsDAO().GetList("type=' '");
ddltitle.DataBind();
}
}
//
protected void ddltitle_SelectedIndexChanged(object sender, EventArgs e)
{
string title = ddltitle.SelectedValue;
DataSet ds = new MyShop.DAL.NewsDAO().GetList("*","id","",1,1,"type=' ' and title='"+title+"'");
if (ds.Tables.Count>0&&ds.Tables[0].Rows.Count>0)
{
txtbody.Text = ds.Tables[0].Rows[0]["body"].ToString();
}
}
//
protected void btnSave_Click(object sender, EventArgs e)
{
string title = ddltitle.SelectedValue;
string body = txtbody.Text;
// NewsDAO , UpdateBody ( Update )
new MyShop.DAL.NewsDAO().UpdateBody(title,body);
litmsg.Text = "<span style='color:blue'> </span>";
txtbody.Text = "";
}
}
}
그러나 이 때 몇 가지 작은 문제 가 있 습 니 다. 첫째, 저장 에 성공 하면 litmsg 의 값 은 '저장 성공' 입 니 다. 이 때 드 롭 다운 목록 상자 에서 다른 하위 항목 을 선택 하 십시오. 이 힌트 는 여전히 존재 합 니 다. 둘째, 전체 helpChange. aspx 페이지 에 들 어 갔 을 때 드 롭 다운 목록 상자 에 표 시 됩 니 다.", 대응 하 는 아래 텍스트 상자 가 비어 있 습 니 다. 이것 도 수정 해 야 합 니 다. 완 선 된 cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace Web.admin
{
public partial class helpChange : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//
ddltitle.DataTextField = "title";//
ddltitle.DataValueField = "title";//
ddltitle.DataSource = new MyShop.DAL.NewsDAO().GetList("type=' '");
ddltitle.DataBind();
// , , , ,
DataSet ds = new MyShop.DAL.NewsDAO().GetList("*", "id", "", 1, 1, "type=' ' and title='" + ddltitle.SelectedValue + "'");
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
{
txtbody.Text = ds.Tables[0].Rows[0]["body"].ToString();
}
}
}
//
protected void ddltitle_SelectedIndexChanged(object sender, EventArgs e)
{
string title = ddltitle.SelectedValue;
DataSet ds = new MyShop.DAL.NewsDAO().GetList("*","id","",1,1,"type=' ' and title='"+title+"'");
if (ds.Tables.Count>0&&ds.Tables[0].Rows.Count>0)
{
txtbody.Text = ds.Tables[0].Rows[0]["body"].ToString();
}
// ,
litmsg.Text = "";
}
//
protected void btnSave_Click(object sender, EventArgs e)
{
string title = ddltitle.SelectedValue;
string body = txtbody.Text;
// NewsDAO , UpdateBody ( Update )
new MyShop.DAL.NewsDAO().UpdateBody(title,body);
litmsg.Text = "<span style='color:blue'> </span>";
txtbody.Text = "";
}
}
}
마지막 으로 텍스트 상 자 는 온라인 편집기 로 만들어 야 합 니 다. 1: 맨 위 줄 코드 에 추가 합 니 다. ValidateRequest = "false" 속성 2: js 코드 를 추가 합 니 다.
<script src="../kindeditor/kindeditor.js" type="text/javascript"></script>
<script type="text/javascript">
KE.show({
id: 'txtbody',
items: [
'title', 'fontname', 'fontsize', '|', 'textcolor', 'bgcolor', 'bold',
'italic', 'underline', 'strikethrough', 'removeformat', '|', 'image',
'flash', 'media', 'advtable', 'hr', 'emoticons', 'link', 'unlink'
],
imageUploadJson: '/handler/upload_json.ashx'
});
</script>
최종 완벽 한 aspx 코드:
<%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="true" CodeBehind="helpChange.aspx.cs" Inherits="Web.admin.helpChange" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="../kindeditor/kindeditor.js" type="text/javascript"></script>
<script type="text/javascript">
KE.show({
id: 'txtbody',
items: [
'title', 'fontname', 'fontsize', '|', 'textcolor', 'bgcolor', 'bold',
'italic', 'underline', 'strikethrough', 'removeformat', '|', 'image',
'flash', 'media', 'advtable', 'hr', 'emoticons', 'link', 'unlink'
],
imageUploadJson: '/handler/upload_json.ashx'
});
</script>
</head>
<body>
<form id="form1" runat="server">
<br />
<asp:DropDownList ID="ddltitle" runat="server" AutoPostBack="true"
onselectedindexchanged="ddltitle_SelectedIndexChanged">
</asp:DropDownList>
<br />
<asp:TextBox ID="txtbody" TextMode="MultiLine" runat="server" Height="237px" Width="571px"></asp:TextBox>
<br />
<asp:Button ID="btnSave" runat="server" Text=" " onclick="btnSave_Click" />
<asp:Literal ID="litmsg" runat="server"></asp:Literal>
</form>
</body>
</html>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MVC의 심연를 보면 Trygve Reenskaug씨가 고안했다고 쓰여 있다. 뷰에 조작 오브젝트가 있는 경우와, 단순히 키보드나 마우스의 상태를 픽업하는 것을 고려하는 예이다. 그러나 잘 생각하면 이상하다. 예를 들어 키보드에...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.