CRM 2011 “$ is undefined”

浪尽此生 提交于 2019-11-28 00:47:59

$ is shorthand for jQuery. jQuery is not natively included in CRM2011, so you'll have to add a web reference yourself. Simply create a JavaScript web resource for jQuery, paste in the jQuery code, and then add the web resource to your form. Also, in order to get the web resource to load on your form, you need to specify a function for CRM to call from it. Since in this case jQuery is a library and you won't be calling any of its functions onload, simply use isNaN (a native JavaScript function) as the function to call.

The entity form on which you are working. Go to Form customization->Form properties. You can see the Files(.js) already included for that form.

Click on 'Add'(left top)..and add the JQuery file(like JQuery1.4.4 or higher version) if JQuery file is added in your CRM Webresources, if not then you need to add this file in CRM webresources first.

Sounds like you need to include jquery on your form.

Basically you just add jquery the same way you would any other javascript file.

  • Download a copy of jquery (unzip if zipped, you need the .js file)
  • Navigate to Web Resources in your Solution
  • Click the New button in the toolbar
  • Fill in the form
  • Click the Browse button for the Upload File box
  • Select the .js file you downloaded
  • Click the Save button in the ribbon bar
  • Click the Publish button in the Ribbon bar

Add your newly created Web Resource to your form (Under Form Properties).
Be sure this is the first library listed on your form.
You don’t need anything in Event Handlers for jquery, just call it from any of your custom libraries as per usual.

Keep in mind that many of the things you may be tempted to use jquery for may not be supported. Microsoft wants you to use the Xrm.Page object:
Use the Xrm.Page Object Model
http://msdn.microsoft.com/en-us/library/gg328474.aspx

According to Microsoft:
Use of jQuery
Do not use jQuery to interact with Microsoft Dynamics CRM 2011 forms.
Use the Xrm.Page object model methods to access form elements.
The only supported use of jQuery in the Microsoft Dynamics CRM 2011 web
application is to use the jQuery.ajax method to retrieve data from
the REST endpoint. For more information, see Using jQuery.
Using jQuery to modify Microsoft Dynamics CRM 2011 application pages or forms is not supported.
You may use jQuery within your own HTML web resource pages.
http://msdn.microsoft.com/en-us/library/gg328261.aspx#BKMK_UsingjQuery>

Use the REST Endpoint with Ajax and JScript Web Resources
http://msdn.microsoft.com/en-us/library/1bb82714-1bd6-4ea4-8faf-93bf29cabaad#BKMK_UsingJQuery

CRM 2011 Useful JavaScript Tidbits
Call the onchange event of a field
http://www.powerobjects.com/blog/2011/01/14/crm-2011-useful-javascript-tidbits/

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!