Sharepoint EventHandler 实现弹出错误消息

         Sharepoint 在EventHandler中是不能实现弹出的消息的。那要实现弹出消息改如何实现呢?

         虽然不能在EventHandler中实现消息弹出功能,但是可以实现自定义错误页面跳转,那我们是不是可以在自定义的错误页面进行消息弹出,然后页面返回到原始页面?

         试一下吧:

       1.建立EventReceiver项目,并新增自定义错误页面,结构如下:

         image

     2. ItemAdding事件中,添加如下代码:

properties.ErrorMessage = "Start time must greater than now !";
  properties.Status = SPEventReceiverStatus.CancelWithRedirectUrl;
  properties.RedirectUrl = "/_layouts/MeetingRoomReserveHandler/MeetingRoomError.aspx?msg=" + properties.ErrorMessage;
  return;

 3.在自定义错误页面MeetingRoomError.aspx,添加JS:

 <script type="text/javascript">
        function getQueryString(name) {
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
            var r = window.location.search.substr(1).match(reg);
            if (r != null) return unescape(r[2]);
            return null;
        }
        var msg = getQueryString("msg");
        alert(msg);
        history.go(-1);
    </script>

     4.部署,查看效果:

                     image

              image

image

基本实现所要的效果。

原文地址:https://www.cnblogs.com/Roy_Cao/p/2735433.html