MVC新闻网站建立,完成详情页面的制作。
详情就是点击详情后弹出一个div,所以需要现在boby里面先建立一个div
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
< div id = "detailDiv" >
< table >
< tr >
< td >标题:</ td >
< td >< input class = "easyui-textbox" style = "width:250px;height:32px" id = "title" /></ td >
</ tr >
< tr >
< td >作者:</ td >
< td >< input class = "easyui-textbox" style = "width: 250px; height: 32px" id = "author" /></ td >
</ tr >
< tr >
< td >发布日期:</ td >
< td >< input class = "easyui-textbox" style = "width: 250px; height: 32px" id = "subDateTime" /></ td >
</ tr >
< tr >
< td >内容:</ td >
< td >< input class = "easyui-textbox" data-options = "multiline:true" style = "width: 400px; height: 250px" id = "Msg" /></ td >
</ tr >
</ table >
</ div >
|
这个div是需要隐藏的,当点击详情再弹出来。(隐藏语句需要放在页面加载的函数中)
1
2
|
//设置详细框为不可见
$( "#detailDiv" ).css( "display" , "none" );
|
在上一篇的datagrid里面我给详情的超链接添加了一个 onclick="showDetail('+row.Id+')" 事件 row.Id就是拿到点击的新闻Id
现在就需要完善这个方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//显示新闻详情
function showDetail(index) {
//弹出div
$( "#detailDiv" ).css( "display" , "block" );
$.post( "/NewInfo/ShowModelById" , { id: index }, function (data) {
$( "#title" ).textbox( "setValue" , data.Title);
$( "#author" ).textbox( "setValue" , data.Author);
$( "#subDateTime" ).textbox( "setValue" , ChangeDateFormat(data.SubDateTime));
$( "#Msg" ).textbox( "setValue" , data.Msg);
});
//弹出dialog
$( "#detailDiv" ).dialog({
title: "新闻详情" ,
modal: true ,
width: 500,
height: 500,
});
}
|
同样的这里要根据Id查询新闻信息
在DAL层的NewInfoDal中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
/// <summary>
/// 根据id查询出记录
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public NewInfo GetEntityModel( int id)
{
string sql = "select * from T_News where Id=@Id" ;
DataTable da = SqlHelper.ExcuteDataTable(sql, CommandType.Text, new SqlParameter( "@Id" , id));
NewInfo newInfo = null ;
if (da.Rows.Count > 0)
{
newInfo = new NewInfo();
LoadEntity(da.Rows[0], newInfo);
}
return newInfo;
}
|
在BLL层的NewInfoServices中
1
2
3
4
5
6
7
8
9
|
/// <summary>
/// 根据id查询记录
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public NewInfo GetEntityModel( int id)
{
return NewInfoDal.GetEntityModel(id);
}
|
最后在NewInfo控制器下建立ShowModelById方法
1
2
3
4
5
6
7
8
9
10
|
/// <summary>
/// 根据id查询记录
/// </summary>
/// <returns></returns>
public ActionResult ShowModelById()
{
int id = int .Parse(Request[ "id" ]);
NewInfo model = NewInfoBll.GetEntityModel(id);
return Json(model, JsonRequestBehavior.AllowGet);
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。