mvc controller中显示弹框提示

周公家小孩 2014-09-09 01:21:24
点击评价订单页面判断订单是否可以评价,如果可以评价需要打开一个新标签页面,如果不可以评价则在本页面给出弹框提示
用mvc做的,求代码思路
/// <summary>
/// 评价订单
/// </summary>
/// <returns></returns>
public ActionResult CommentOrder(int id,string pageName)
{
string userID = User.CurrentUser().UserID;//得到用户编号
ViewData["orderID"] = id;
int orderID = id;
int result;
var i_Order = OrderSystem.OrderDetailByOrderIDandUserID(orderID, userID, out result);
ViewBag.pageName = pageName;

switch (result)
{
case -3:
//return JavaScript("<script>window.alert('订单号后" + id.ToString().Length + "为:" + id + "的订单已评价或暂时无法评价!');location.href='/Order/MyOrder.html';</script>");
return JavaScript("alert('验证失败!)");

case -2:
return JavaScript("<script>window.alert('订单号后" + id.ToString().Length + "为:" + id + "的订单错误!');location.href='/Order/MyOrder.html';</script>");
default:
if (i_Order == null)
return RedirectToAction("MyOrder");
else
return View(i_Order);
}
}
这样写会出现
本人才接触mvc4,求帮助
...全文
11900 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
低调之人 2014-09-28
  • 打赏
  • 举报
回复
还是通过Ajax返回进行弹出效果好些。
浪花三朵朵 2014-09-28
  • 打赏
  • 举报
回复
mvc不建议直接在controller输出警告提示
引用 1 楼 luanjun123456 的回复:
JavaScriptResult本质就是一段文本内容,使用Ajax可以直接弹出,如果你想弹窗可以参考: http://www.cnblogs.com/artech/archive/2012/08/15/action-result-03.html 我建议你使用Content方法,返回客户端时,再输出js。
return Content("<script>alert('哈哈!')</script>");
如果在controller里输出js就违背了mvc设计的初衷, 可以在在controller 里这样写: public JsonResult Test() { return Json(new { status = 2, msg = "用户已存在" }, JsonRequestBehavior.AllowGet); } 在html页面中,根据服务器返回的json状态,来输出js $.get('/Controller/Test, function (data) { switch (data.status) { case 0:// alert('') break; default:// break; } } );
rokerker 2014-09-22
  • 打赏
  • 举报
回复
aps.net MVC好像不大提倡弹框,你自定义Html.ValidationSummary显示到页面就达到效果了
LoserOrLeader 2014-09-10
  • 打赏
  • 举报
回复
return Contenct("alert('验证失败!)",“text/html”); 好像我听说MVC里边的JavaScript是个BUG,不能返回JS代码~~~~~
骑猪看海 2014-09-09
  • 打赏
  • 举报
回复
Response.Write("<script>alert('弹不弹')</script>"); Response.End(); return new EmptyResult();
ayanamireizero 2014-09-09
  • 打赏
  • 举报
回复
mvc不建议直接在controller输出警告提示 可以考虑这样,点击评价时直接ajax判断能否评价,不能评价在jquery里直接写警告窗 如: html <div id="pingjia" data-id="1 (这里为评价商品id“>提交评价</div> js: $(document).ready(function(){ $("#pingjia").click(function(){ var id=$(this).attr("data-id"); $.ajax({ url:"xxxx/checkpj", data:{id:id}, type:"post", success:function(data){ if(data !="ok"){ alert(data); } } }) } }) controller: public string checkpj(int id) { string str = "error"; //这里写一些判断条件,如果可以提交评价就str = "ok",否则直接str="需要弹窗的消息提示" return str }
完美的神速 2014-09-09
  • 打赏
  • 举报
回复
JavaScriptResult本质就是一段文本内容,使用Ajax可以直接弹出,如果你想弹窗可以参考: http://www.cnblogs.com/artech/archive/2012/08/15/action-result-03.html 我建议你使用Content方法,返回客户端时,再输出js。
return Content("<script>alert('哈哈!')</script>");

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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