请高人指教AJAX问题。

dingbaoliang 2010-05-06 07:01:20
问个问题 请高人解答,本人是菜鸟,请详细一点。谢谢了。
一条信息 如果是登陆这个人发布的 就可以删除 如果不是登陆这个人发布的则不让删除 弹出提示框
我用AJAX
代码如下 信息列表页面
  <script language="JavaScript" type="text/jscript">
function comeBack(pID,title)
{
if(confirm("您确定将<"+title+">撤项吗?"))
{
CheckUser(pID)
}
}

var xmlHttp = null;
function CheckUser(uid)
{
try
{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(err1)
{
try
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(err2)
{
xmlHttp = new XMLHttpRequest();
}
}
var url = "test.aspx?id=" + uid;
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange = OnHandler;
xmlHttp.send(null);
}
function OnHandler()
{
if(xmlHttp.readyState == 4)
{
var isValid = xmlHttp.responseText;
alert(isValid.substring(0,20));


}
}
</script>


<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="b5d6e6" onmouseover="changeto()" onmouseout="changeback()">
<tr>
<th width="30%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px;"><div align="center"><span class="STYLE1">项目名称</span></div></th>
<th width="10%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">项目类型</span></div></th>
<th width="15%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">建项时间</span></div></th>
<th width="10%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">建项人</span></div></th>
<th width="8%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">项目状态</span></div></th>
<th width="8%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">抽取情况</span></div></th>
<th width="18%" background="images/tab/bg.gif" bgcolor="#FFFFFF" style="height: 22px"><div align="center"><span class="STYLE1">基本操作</span></div></th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# Convert.ToString(Eval("pName"))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# Convert.ToString(Eval("pt.tName"))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# Convert.ToDateTime(Eval("pDate"))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# Convert.ToString(Eval("user.uName"))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# getState(Convert.ToInt32(Eval("pState")))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1"><%# isDraw(Convert.ToBoolean(Eval("pDraw")))%></span></div></td>
<td bgcolor="#FFFFFF" style="height: 20px"><div align="center"><span class="STYLE1">
<a href="javascript:CheckUser('<%# Eval("pID") %>')"><img alt="撤项" src="../images/tab/del.gif" width="16" height="16" />撤项   </a>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

在我点扯项的时候 跳转到test.aspx页判断是否是登陆人发布的项目 然后返回结果
下面是test.aspx.cs的代码

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//获得本项目的ID
int id = Convert.ToInt32(Request.QueryString["id"]);
int count = 0;
//判断是否已经撤项

//获得用户ID
if (Session["userid"] != null)
{//此方法是判断是否可以撤销项目 大于0则可以撤销
count = t_Project_Service.GetIsProjectCancel(id, Convert.ToInt32(Session["userid"].ToString()));
}
else { Response.Redirect("/Login.aspx"); }

if (count > 0)
{
//此处代码为撤销项目 修改数据库 返回影响的行数
int i = t_Project_Service.UpdateProjectState(id, 2);
if (i > 0)
{
Response.Write(" 项目撤项成功! ");
}
else { Response.Write("对不起!项目撤销失败,请联系系统管理员。"); }
}
else
{
Response.Write("对不起!您不是项目创建人不能撤销此项目!");
}
}
}


现在的问题来了 操作都没有问题 不论什么结果都能返回相应的信息 并弹出提示框
但是如果可以撤项 数据也改了 扯项成功的对话框也弹出来了 但是页面没有反应 还得刷新一下 才能看到数据修改过来了
我现在就是不知道怎么在修改数据库成功以后再刷新一下界面
请高人指点 不要太深奥 也别将什么原理了 因为我真的不懂 就简简单单的告诉我该怎么做,详细一点,最好能有代码,
再次由衷的感谢,我是在初级阶段。
...全文
103 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dingbaoliang 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kk3k2005 的回复:]
if(xmlHttp.readyState == 4)
{
var isValid = xmlHttp.responseText;
alert(isValid.substring(0,20));


}

你这里对AJAX返回的操作只有 alert 当然不会刷新页面
代码不贴了 网上搜大把的
[/Quote]
那不是需要判断 是否撤项了 才能刷新吗 怎么判断
KK3K2005 2010-05-06
  • 打赏
  • 举报
回复
if(xmlHttp.readyState == 4)
{
var isValid = xmlHttp.responseText;
alert(isValid.substring(0,20));


}

你这里对AJAX返回的操作只有 alert 当然不会刷新页面
代码不贴了 网上搜大把的

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧