Ich habe eine zentrale Stelle, wo Ckeditor in gespeichert.ckeditor nicht geladen in IE, wenn in zwei Anwendungen verwendet
Header Web-Anwendung verwendet ckeditor erfolgreich in IE, Firefox und Chrome.
Der Header wird die ganze Zeit für alle Webanwendungen in der Domäne geladen.
Die Webanwendung X benötigt ckeditor. Die Webanwendung wartet (mit Timeouts) darauf, dass das CKEDITOR-Objekt verfügbar ist und verwendet es dann.
Dies funktioniert in Chrome und Firefox, aber nicht in IE. Was fehlt mir hier?
Die Timeouts in IE gehen weiter, aber das CKEDITOR-Objekt ist nie verfügbar.
Code:
namespace Models
{
using System.ComponentModel.DataAnnotations;
public class EmailModel
{
public int EmailID { get; set; }
public string FromAddress { get; set; }
public string ToAddresses { get; set; }
[Required(ErrorMessage = "Subject is required.")]
[StringLength(50, ErrorMessage = "Subject cannot be greater than 50 characters.")]
public string Subject { get; set; }
[Required(ErrorMessage = "Body is required.")]
public string Body { get; set; }
}
}
Html:
@model Models.EmailModel
@{
ViewBag.Title = "Email Template Details";
}
<h2>Email Template Details</h2>
<script type="text/javascript" src="~/Scripts/EmailDetails.js?version=06.07.2016_1156"></script>
<div>
<hr />
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.FromAddress)
</dt>
<dd>
@Html.DisplayFor(model => model.FromAddress)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Subject)
</dt>
<dd>
@Html.DisplayFor(model => model.Subject)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Body)
</dt>
<dd>
@Html.HiddenFor(model => model.Body)
<textarea id="editorBodyDetails" name="editorBodyDetails" style="display:none"></textarea>
</dd>
</dl>
</div>
<p>
@Html.ActionLink("Edit", "Edit", new { id = Model.EmailID }) |
@Html.ActionLink("Email Templates", "Index")
</p>
Script:
var countCKEDITORAttemps = 0;
$(function() {
initializeCKEDITOROnceLoaded(countCKEDITORAttemps);
});
function initializeCKEDITOROnceLoaded(countCKEDITORAttemps) {
var interval = 1000; // ms
if (countCKEDITORAttemps < 100) {
window.setTimeout(function() {
if (typeof(CKEDITOR) !== 'undefined') {
setupCKEditor("editorBodyEdit");
} else {
countCKEDITORAttemps = countCKEDITORAttemps + 1;
console.log("Loading CKEDITOR:" + countCKEDITORAttemps * 1000 + "milliseconds");
window.setTimeout(initializeCKEDITOROnceLoaded(countCKEDITORAttemps), interval);
}
}, interval);
}
}
function setupCKEditor(id) {
CKEDITOR.replace(id, { height: 200, });
CKEDITOR.instances[id].setData($("#Body").val());
}
HINWEIS: Ich bin auch nicht ckeditor in Web-Anwendung X
Die Linie, an der Teilnehmer laden g in IE scheint ein Problem zu haben ist hier:
var b=d[c].src.match(a);
Die "src" ist nicht verfügbar. Könnte es sein, dass die Anti-Cache-Einstellung Probleme beim Laden des IE verursacht?
Fehlermeldung beim Laden:
„Fehler:. Invalid argument \ n an anonyme Funktion (http://domain.com/includes/ckeditor/ckeditor.js?anti-cache=09Jun2016&=1468730100637:5:431) \ n an anonyme Funktion (http://domain.com/includes/ckeditor/ckeditor.js?anti-cache=09Jun2016&=1468730100637:5:153) \ n an anonyme Funktion (http://domain.com/includes/ckeditor/ckeditor.js?anti-cache=09Jun2016&=1468730100637:5:78) \ n bei Global-Code (http://domain.com/includes/ckeditor/ckeditor.js?anti-cache=09Jun2016&=1468730100637:5:2) "
Bitte geben Sie den HTML-Code an, mit dem Sie arbeiten, und wenn möglich eine funktionierende Geige, die das Problem veranschaulicht. – Dekel