Prob lors du chargement de nicedit avec un appel ajax
Question
J'utilise Nicedit.js pour convertir mon TextArea en éditeur HTML, lorsque j'appelle directement la page, il n'y a pas de problème, mais quand j'appelle via Ajax Call, ou Page d'appel qui sous l'onglet jQuery, la page de l'éditeur ne charge pas mais pop Erreur,
Erreur: «null» est nul ou non un objet
Je déclare mon TextArea comme ci-dessous
bkLib.onDomLoaded(function() {
new nicEditor({iconsPath :'<%=request.getContextPath()%>/images/nicEditorIcons.gif',
maxHeight:345,
buttonList : ['save','bold','italic','underline','left','center','right','justify','ol','ul','fontSize','fontFamily','fontFormat','indent','outdent','image','upload','link','unlink','forecolor','xhtml']}).panelInstance('content');
});
Quiconque a utilisé Nicedit avec Ajax
Merci d'avance
La solution
Après avoir craqué ma tête, j'ai finalement trouvé une solution, donc lorsque jamais l'appel qui contient l'éditeur via Ajax, déclarez simplement le textarea comme newceditor (). PanneLinstance ('Content');
pas bklib.ondomloaded (function () {new Niceditor (). PanneLinstance ('Content');}
Autres conseils
j'utilise
new nicEditors.allTextAreas;
à la place de
bkLib.onDomLoaded(nicEditors.allTextAreas);
Fondamentalement, si vous travaillez avec ASP.NET et le panneau de mise à jour, vous pouvez copier-périte le code. Remarque: n'oubliez pas de modifier les identifiants TextArea pour le vôtre.
<script type="text/javascript">
//hdnNicEdit: it is a hiddenfield in ASP page.
function SaveContent() {
$("#<%=hdnNicEdit.ClientID %>").val($(".nicEdit-main").html());
}
function pageLoad() {
$(function () {
new nicEditor().panelInstance('here your textarea id');
$(".nicEdit-main").html($("#<%=hdnNicEdit.ClientID %>").val());
})
}
</script>
Page ASP:
<textarea ID="YOUR TEXTAREA ID" class="form-control" runat="server"></textarea>
<asp:HiddenField ID="hdnNicEdit" runat="server" />
Remarque: vous devez ajouter: onClientClick = "SavEContent ();" dans le bouton où vous enregistrez la valeur Nicedit TextArea.
DU CÔTÉ SERVEUR.
Obtenir la valeur de la zone de texte:
string textAreaValue = hdnNicEdit.value;
Réglage de la valeur de TextArea:
hdnNicEdit.value = "i am setting text into textarea"
Plus d'informations: https://dotnetdaily.net/web-development/tutorials/aspdotnet/nidit-work-update-panel-asp-net