Dynamics CRM不发布JS调试
本博客已迁移至 http://www.krely.cn/
上个项目做了一年多,大多是在做JS的开发,由于开发人数比较多,着实被坑的不轻。因为JS修改完成之后必须要发布,对于我们动辄几千行的JS的调试,是件很痛苦的事情。稍微写错一点就得重新发布,人一多,发布就得等,然后别人发布的时候你就只能干看着等别人发布完,这样一天下来时做不了啥事的,所以一直想着能找到不发布JS调试,之前也在群里问了,不过我觉得我的方法比较简单,现在分享给大家,如果有更好的方法,也欢迎分享。
准备工具
Fiddler 下载安装后启动即可。
步骤
Form上有new_/test/test.js需要调试,还绑定了onload事件。
- 将下面代码写入test.js ,保存并发布
//test.js的地址
//CRM2011地址是 var url = "../WebResources/new_/test/test.js";
var url = "/WebResources/new_/test/test.js";
var xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET",url,false);
xmlhttp.send();
eval(xmlhttp.responseText); - 刷新Form,在Fiddler中捕捉到了上面代码的请求。
由于test对象事件不存在,所以报错了。
- 设置Autoresponder
- 选中test.js,然后单击选中AutoResponder选项卡,吧下面三个CheckBox选中,然后单击Add Rule,在Rule Editor中设置 JS的路径
路径D:\test.js是写好的JS,内容如下:
(function (global, $) {
var test = global.test = {};
test.onload = function(){
alert("onload test");
}
})(window,jQuery)
再次刷新,可以看到JS已经成功替换掉了。
再次修改本地JS,刷新Form
(function (global, $) {
var test = global.test = {};
test.onload = function(){
alert("test autoresponder");
}
})(window,jQuery)
已经成功替换掉了
至此,已经可以直接修改D:\test.js文件进行调试,而不用麻烦的发布啦。
Dynamics CRM不发布JS调试的更多相关文章
- Dynamics CRM 客户端的插件调试
Dynamics CRM 客户端的插件调试 一直以来,Dynamics CRM插件在大家的印象中都是不便于调试的,根据官方文档(http://technet.microsoft.com/zh-cn/l ...
- Dynamics CRM 日常使用JS整理(一)
整理下平时CRM开发中用到的一些基本的js操作 取值: var oResult = Xrm.Page.getAttribute(sFieldName).getValue(); var oResult ...
- Microsoft Dynamics CRM 2011/2013 JS操作集锦
1.Xrm.Page.context用户ID:getUserId()用户角色:getUserRoles()用户语言:getUserLcid()组织名称:getOrgUniqueName()组织语言:g ...
- Dynamics CRM 日常使用JS整理(三)
一.指定 Partylist 类型字段能 lookup 的实体(以 Appointment 中某个字段为例子): var control = Xrm.Page.getControl("req ...
- Dynamics CRM 日常使用JS整理(二)
BPF(Business Process Flow)相关的JS 为Stage添加changed或者selected事件: function fnOnLoad() { Xrm.Page.data.pro ...
- Dynamics CRM 常用的JS
常用JS(一) Xrm.Page.context.getUserId(): //获取当前用户id Xrm.Page.context.getUserName(): //获取当前用 ...
- Microsoft Dynamics CRM 2011 常用JS 按F12 改动窗体上数据的方法
1.按F12打开控制台输入下面代码: contentIFrame.Xrm.Page.getAttribute("new_status").setValue(50);//设值cont ...
- Dynamics CRM 365常用js记录。
var entityname =window.parent.Xrm.Page.data.entity.getEntityName();//获取实体名称 var sampid = window.pare ...
- Dynamics CRM JS的调试的弊端解决办法
说道CRMJS的调试的博客,之前已经有人写过.很简单,和平常网站JS的调试过程大致相同. 但是Dynamics 中JS调试最麻烦的莫过于出错之后需要修改代码了.因为随着JS代码的修改,伴随着需要保存和 ...
随机推荐
- React实践
React实践(一) 该实践取自官方教程:https://github.com/reactjs/react-tutorial 主要是自实现的过程以及一些心得体会 该实践是实现一个评论框. 一个展示 ...
- IEnumerable,IQueryable的区别
IEnumerable,IQueryable之前世今生 IEnumerable<T>在.Net2.0中我们已经很熟悉了.你想要利用Foreach迭代吗?实现IEnumerable<T ...
- Oracle 指数 一个简短的引论
1 索引创建语法: CREATE UNIUQE | BITMAP INDEX <schema>.<index_name> ON <schema>.< ...
- 虚拟机安装麒麟3.2时报unkown filesystem,you need to load the linux kernel first
工作的需要,安装在虚拟机上的麒麟3.2的64位版本号. 使用虚拟机VMware Workstation 9.0,依照常识目标DVD光盘文件的类型选择Other Linux 2.6.x Kernel 6 ...
- Entity Framework加载相关实体——延迟加载Lazy Loading、贪婪加载Eager Loading、显示加载Explicit Loading
Entity Framework提供了三种加载相关实体的方法:Lazy Loading,Eager Loading和Explicit Loading.首先我们先来看一下MSDN对三种加载实体方法的定义 ...
- 私人定制javascript中函数小知识点
函数的定义 首先在javascript中,函数就是对象,程序可以随意操控它们.比如,可以给它们设置属性,甚至调用它们的方法.函数使用function关键字来定义.它既可以用在函数定义表达式,也可以用在 ...
- js 利用iframe和location.hash跨域解决的方法,java图片上传回调JS函数跨域
奶奶的:折腾了我二天,最终攻克了!网上有非常多样例. 但跟我的都不太一样,费话不多说了,上图 上代码: IE ,firefix,chrome 測试通过 js :这个主页面,部分代码, functi ...
- pig 的chararry不能用于比较的类型可以comparison operator
pig 的chararry类型可以是由场,通过现场实地比较. element_id 这是chararray种类. 声明: no_app_category_mapping = filter no_ele ...
- [LeetCode]Copy List with Random Pointer &Clone Graph 复杂链表的复制&图的复制
/** * Definition for singly-linked list with a random pointer. * struct RandomListNode { * int label ...
- java ResultSet 结果集处理 createStatement() 里参数的意义(第一弹)
createStatement(int resultSetType,int resultSetConcurrency)参数一:结果集类型可取值: 1.ResultSet.TYPE_FORWOR ...