脚本仅在编辑模式 - 共享点页面上执行
Script only executing on Edit Mode-Sharepoint Page
>我有一个附加到 CEWP 的脚本,该脚本仅在我处于编辑模式时执行,在保存页面时不执行任何操作。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
function openDialogBox(Url)
{
var ModalDialogOptions = { url:Url, width: 600, height: 500, showClose: true, allowMaximize: true};
SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', ModalDialogOptions);
}
(function($){
$('.ms-acal-month').ready(function () {
setTimeout(function() {
$('a[href*="DispForm.aspx"]').each(function() {
$(this).attr('onclick', 'openDialogBox("' + $(this).attr('href') + '")');
//$(this).attr('onclick', ' ');
//alert($(this).attr('href'));
});
$('a[href*="DispForm.aspx"]').each(function() {
$(this).attr('href','javascript:openDialogBox("' + $(this).attr('href') + '")');
});
}, 3000);
});
})(jQuery);
</script>
如果它是相关的,这就是我试图通过然后脚本实现的目标:
我在 SharePoint Online 2013 上。我有一个表单,该表单在日历视图中显示事件日历。如果用户想要编辑日历上显示的已添加的事件,我遇到了一些问题。-显示事件的单元格显示事件的标题,并且带有超链接。如果用户双击单元格(在空白区域),他将按照我希望的方式传输到默认显示页面。但是,如果他碰巧单击超链接标题,则默认显示页面不会打开,而是实际的整个项目
我希望始终打开默认显示表单的原因是因为我那里有一个隐藏/显示字段的自定义脚本
提前非常感谢伊拉尔
将type="text/javascript"
添加到引用库的第一个脚本标记中,它应该可以工作。它为我做到了。
事实证明,type="text/javascript"
属性非常重要。我把它排除在引用我正在使用的javascript库的<script>
标签之外(在我的例子中是Angular,在你的例子中是jQuery),并且经历了完全相同的行为 - 当页面处于编辑模式时,角度代码正在执行,但当页面处于查看模式时甚至没有被调用。
我意识到这是一个较旧的帖子,但我只是遇到了类似的问题,并找到了我想我会分享的问题的解决方案。希望它能帮助未来的谷歌搜索者。
相关文章:
- 无法在通过jQuery的ajax加载的页面中执行javascript
- JavaScript执行暂时挂起页面
- 如何在ReactJS JSX中执行嵌套的if-else语句
- 当js函数's已执行
- 哪个先执行
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- HTML表单提交时未执行外部函数
- 在Safari执行javascript之前对其进行修改
- Amd,希望确保某个东西总是最后执行
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 递归使用 eval() 是检查程序执行的好方法吗?
- 如何做到这一点,使代码在不传递条件后执行函数
- 如何在执行此特定onclick事件时执行JavaScript函数
- Facebook共享显示一个接一个的空白页面
- 如何在从浏览缓存加载页面时执行javascript
- 通过javascript/html访问twitter共享iframe
- Jquery表单验证插件-如果选中复选框,如何在提交时执行某些操作
- Jquery:代码在rails中的页面加载时未执行
- 脚本仅在编辑模式 - 共享点页面上执行
- 在javascript对象中,执行"static"函数和原型函数共享相同的命名空间