- Permission denied to access property 'nodeType' from a non-chrome context (on a selectable grid) This errors causes the hover color to stay in the row and makes it unselectable
- when a format a grid action like this:
columns.Add(o => o.ID)
.Format(Html.ActionLink("Edit", "EditPatientCase", new { id= ViewData["IDPatient"], IDCase = "{0}" }, new { @class="t-link action-edit" })).Title("Action").Sortable(false);
the t-link-action-edit class seems to no work and the link is not highlighted on the hover event.
Could you tell me how to fix that? thanks and regards
14 Answers, 1 is accepted
Which version have you downloaded? We have recently uploaded an internal build which you can try. It resolves all the issues found since the release of 2010.2.825. If upgrading to the internal build does not resolve those problems I would request a sample project which demonstrates them.
Regards,Atanas Korchev
the Telerik team
thank you
Grouping should not depend on ASP.NET MVC version. However I really recommend upgrading to ASP.NET MVC 2.
We are currently evaluating your other post with regards to grid grouping and post ther what our findings are.
Atanas Korchev
the Telerik team
If it helps you: I get the javascript error when I move my mouse from the grid table to the scrollbar! It's really weird! It just happens in that particular case! I think I'm going crazy.
regards
I am currently unable to reproduce the error. Could you please attach a sample application? It would help us track what is causing it.
Regards,Atanas Korchev
the Telerik team
thanks for the help
I just made the simplest project on earth and I still have the error! maybe I'm doing something wrong if you were not able to reproduce this issue. Here I send you.
kind regards
The project you have sent is referring to a different assembly version. Was that the problem in your original project?
Regards,Atanas Korchev
the Telerik team
from my project and my system I went to internal builds (as I was told in this post) and downloaded the latest version:
Telerik_Extensions_for_ASPNET_MVC_2010_2_923.zip (Release notes)
My project is referencing to this version, the version of the Telerik.Web.Mvc is 2010.2.923.135 (the latest one). Why are you saying that I refer to an older version? The MVC framework is the 1.
My problem is, as I said before, refering to the Grd: grouping and a javascript error when I move from a selectable row to the scrollbar area.
Hello Robbie,
I've updated the project to our latest build -- you can find it attached. Regarding the JavaScript error - I could not observe it, which browser do you experience it in? Regarding the formatting problem - use a ClientTemplate (as illustrated in the attached project).
Sincerely yours, Alex Gyoshevthe Telerik team
thanks I'll download the latest build right now
thank you for the version where the grouping works. Could you tell me what did you change in my project in order to make it work? I just updated my big project with the binaries of the latest release included in the project you send me but it won't work! I'm quite stuck, any help would be appreciated!
Have you found the javascript error?
thanks again
OK Found,
[Telerik.Web.Mvc.GridAction(EnableCustomBinding = true)]
for
[Telerik.Web.Mvc.GridAction]
made the trick :)
This error is caused by a bug in the jQuery implementation of contains() in this exact case (moving from a dom element to a chrome one). We made an attempt to patch the problem, but to no avail. In order to suppress the error, you'll have to override some of the jQuery code, like this:
<!-- load jQuery manually, so that you can patch it before component initialization --><script src="<%= Url.Content("~/Scripts/jquery-1.4.2.min.js") %>" type="text/javascript"></script><!-- patch jQuery.special.live to check for bogus nodes --><script type="text/javascript"> var rnamespaces = /\.(.*)$/, fcleanup = function (nm) { return nm.replace(/[^\w\s\.\|`]/g, function (ch) { return "\\" + ch; }); }; jQuery.event.special.live = { add: function (handleObj) { jQuery.event.add(this, handleObj.origType, jQuery.extend({}, handleObj, { handler: liveHandler })); }, remove: function (handleObj) { var remove = true, type = handleObj.origType.replace(rnamespaces, ""); jQuery.each(jQuery.data(this, "events").live || [], function () { if (type === this.origType.replace(rnamespaces, "")) { remove = false; return false; } }); if (remove) { jQuery.event.remove(this, handleObj.origType, liveHandler); } } }; function isBogus(element) { try { var parent = element.parentNode; return false; } catch (error) { return true; } } function liveHandler(event) { var stop, elems = [], selectors = [], args = arguments, related, match, handleObj, elem, j, i, l, data, events = jQuery.data(this, "events"); // Make sure we avoid non-left-click bubbling in Firefox (#3861) if (event.liveFired === this || !events || !events.live || event.button && event.type === "click") { return; } event.liveFired = this; var live = events.live.slice(0); for (j = 0; j < live.length; j++) { handleObj = live[j]; if (handleObj.origType.replace(rnamespaces, "") === event.type) { selectors.push(handleObj.selector); } else { live.splice(j--, 1); } } match = jQuery(event.target).closest(selectors, event.currentTarget); for (i = 0, l = match.length; i < l; i++) { for (j = 0; j < live.length; j++) { handleObj = live[j]; if (match[i].selector === handleObj.selector) { elem = match[i].elem; related = null; // Those two events require additional checking if (handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave") { if (isBogus(event.relatedTarget) || elem === event.relatedTarget || $.contains(elem, event.relatedTarget)) related = elem; } if (!related || related !== elem) { elems.push({ elem: elem, handleObj: handleObj }); } } } } for (i = 0, l = elems.length; i < l; i++) { match = elems[i]; event.currentTarget = match.elem; event.data = match.handleObj.data; event.handleObj = match.handleObj; if (match.handleObj.origHandler.apply(match.elem, args) === false) { stop = false; break; } } return stop; }</script><!-- suppress ScriptRegistrar from outputting a second jQuery --><%= Html.Telerik().ScriptRegistrar().jQuery(false) %>Kind regards,
Alex Gyoshev
the Telerik team