Sprservices recuperando valori di testo ricchi
-
10-12-2019 - |
Domanda
Attualmente sto usando SharePoint 2010
e SPServices.js
.
Sono in grado di recuperare e aggiornare il valore tramite SPServices
quando si utilizzano regolari valori di controllo del server HTML
e ASP.NET
utilizzando SPServices.js
e jQuery
tramite il seguente codice:
$().SPServices({
operation: method,
async: false,
listName: list,
CAMLViewFields: fieldsToRead,
CAMLQuery: query,
completefunc: function (xData, Status) {
$("#spinner").hide();
$(xData.responseXML).SPFilterNode("z:row").each(function () {
var myCustomField = ($(this).attr("ows_SQI"));
var myCustomField2 = ($(this).attr("ows_SQIComments"));
UpdateFields(myCustomField, myCustomField2);
});
}
});
.
Quando i controlli sono i controlli standard ASP.NET
, I.e. <asp:TextBox>
o un HTML
Textara, Sprservices può recuperare i valori Fine e jQuery
li aggiornano senza problemi, tuttavia ho cambiato questi campi su un SharePointInputFormTextBox
:
<SharePoint:InputFormTextBox ID="txtProgressNotes" Rows="18" Columns="120" RichText="true" RichTextMode="Compatible" AllowHyperlink="true" TextMode="MultiLine" runat="server"></SharePoint:InputFormTextBox>
.
Ora jquery non aggiorna più il valore.
La mia domanda è, SPServices
supporta il recupero del testo ricco e come vengono aggiornati questi campi tramite jQuery
?
Soluzione 2
Dopo aver scavato più a fondo, sembra che SPServices stia restituendo il valore e sembra jQuery
è il problema effettivo di non aggiornare il valore recuperato da SharePoint quando si utilizza il testo ricco.Ho provato quanto segue che non ha originariamente lavoro:
$("<%=txtProgressNotes.ClientID%>").val('Will not work');
$("<%=txtProgressNotes.ClientID%>").text('Will not work');
$("<%=txtProgressNotes.ClientID%>").html('Will not work');
.
La soluzione è utilizzare la funzione RTE_GetEditorDocument
:
RTE_GetEditorDocument("<%=txtProgressNotes.ClientID%>").body.innerHTML = MDNotes;
.
Popola la casella di testo con il testo ricco dalla Biblioteca Documenti SharePoint che è ciò che ho richiesto.Speriamo che questo aiuterà qualcuno in futuro come RTE_GetEditorDocument
non è documentato.
Altri suggerimenti
Tieni presente che stai lavorando da parte del cliente qui, quindi le cose sono meno "controlli" in quel punto e altro ancora "Collezioni di elementi HTML e alcuni script".
Non posso dire per quale operazione stai usando nella tua chiamata SPSerbes, ma presumo che sia GetListitems dal resto del tuo codice.Quando si effettua quella chiamata, SPServices utilizza Ajax per interrogare il server per i dati dell'elenco.Non fa nulla con i "controlli" sulla pagina.
Quando si tratta di aggiornare gli elementi nella pagina, non è possibile assumere nulla con SharePoint (o qualsiasi altra applicazione Web, francamente).A volte puoi usare l'id come stai cercando di fare nel secondo commento, ma con la maggior parte dei tipi di campo, che non funzionerà perché i "controlli" rendono in modi più complessi.