前台js 脚本
function showDetial(MessageId)
{
open(); $.getJSON(
"RecMessage.aspx?flag=1",
{ meId: MessageId },
function(json) {
$.each(json, function(i) { $("#labSendUser").html(json[i].sNickName);
$("#labtitle").html(json[i].title);
$("#labTime").html(json[i].times);
$("#labContent").html(json[i].contents);
var hid = document.getElementById("meId");
hid.value = json[i].id;
}
);
}
);
} 后台代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{ Response.ContentType = "text/plain";
Response.Write(DeleterMes(int.Parse(Request.QueryString["meId"].ToString())));
Response.End();
}
} private string GetMessageById(int id)
{
DataTable dt = AccMessageServiceBLL.GetMessageById(id);
string data = "[";
for(int i=0;i<dt.Rows.Count;i++)
{
data += "{sNickName:\"" + dt.Rows[i]["sNickName"] + "\",title:\"" + dt.Rows[i]["title"] + "\",times:\"" + dt.Rows[i]["sendTime"] + "\",contents:\"" + dt.Rows[i]["message"] + "\",id:\""+dt.Rows[i]["id"]+"\"}";
}
data += "]";
return data;
} 其中dt.Rows[i]["message"]值如果含有Html代码
如("<IMG src=\"http://localhost:3180/stc_Forum/system_dntb/skin/xp/face/qq/001.gif\">")
前台$.getJSON()方法内无返回值,但是测试后台 data 里值正确return 了。 如果dt.Rows[i]["message"]值中不含html代码则$.getJSON()方法成功获取值,
请问这是什么原因??
在dt.Rows[i]["message"]值中必须含有Html代码,怎样做能够解决含有html代码并且能够正确获取?
谢谢。
function showDetial(MessageId)
{
open(); $.getJSON(
"RecMessage.aspx?flag=1",
{ meId: MessageId },
function(json) {
$.each(json, function(i) { $("#labSendUser").html(json[i].sNickName);
$("#labtitle").html(json[i].title);
$("#labTime").html(json[i].times);
$("#labContent").html(json[i].contents);
var hid = document.getElementById("meId");
hid.value = json[i].id;
}
);
}
);
} 后台代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{ Response.ContentType = "text/plain";
Response.Write(DeleterMes(int.Parse(Request.QueryString["meId"].ToString())));
Response.End();
}
} private string GetMessageById(int id)
{
DataTable dt = AccMessageServiceBLL.GetMessageById(id);
string data = "[";
for(int i=0;i<dt.Rows.Count;i++)
{
data += "{sNickName:\"" + dt.Rows[i]["sNickName"] + "\",title:\"" + dt.Rows[i]["title"] + "\",times:\"" + dt.Rows[i]["sendTime"] + "\",contents:\"" + dt.Rows[i]["message"] + "\",id:\""+dt.Rows[i]["id"]+"\"}";
}
data += "]";
return data;
} 其中dt.Rows[i]["message"]值如果含有Html代码
如("<IMG src=\"http://localhost:3180/stc_Forum/system_dntb/skin/xp/face/qq/001.gif\">")
前台$.getJSON()方法内无返回值,但是测试后台 data 里值正确return 了。 如果dt.Rows[i]["message"]值中不含html代码则$.getJSON()方法成功获取值,
请问这是什么原因??
在dt.Rows[i]["message"]值中必须含有Html代码,怎样做能够解决含有html代码并且能够正确获取?
谢谢。
解决方案 »
- 求助~~ 如何控制一个用户在同一时间只能在一台机子上登录??
- VS2008 VS2005对编码识别的能力不如记事本 很无耐
- 除了iis还有其它运行asp的平台吗
- 哪们大哥帮忙写个算法,不胜感激
- 郁闷了,在XP下编译成功,可以检索出sybase数据库中的图片,但部署到2003server上怎么也出不来图片
- 在datalist控件上绑定两个表 100分求
- 关于页面刷新的问题,帮帮忙!!
- 艰难困苦,玉汝于成 服务器控件的问题
- 怎样把内容为空的Textbox的转换成零,从而满足几个Textbox实现运算
- 类库中新添加的方法为什么用不了
- 求教达人一个问题!麻烦进来,谢谢!
- 使Gridview中字体不发生变化
string s=dt.Rows[i]["message"].ToString();
s = s.Replace("\"","\\"");
然后再data +=输出。
赞成,你最好先加个断点调试一下看看dt.Rows[i]["message"]是不是有双引号
string s=dt.Rows[i]["message"].ToString();
s = s.Replace("\"","\\\"");
"\\"斜杠问题没错,我返回值中没包含html代码就没问题,值中一旦包含html代码就$.getJSON()就无返回值,获取不到返回值,但是也不报错。js也调试也调试不到json[i]... ,如果返回值中不包含html代码不用调试直接alert(json[i]...)就能弹出每一项的值,比较郁闷中。。