編集フォームの最初の読み込み時に、JavaScriptを使用してSharePointフォームのすべてのフィールドを取得しようとしています。何とか、最初の2つのマルチラインフィールドだけが適切にキャプチャされています。フィールドの順序を変更すると、これは機能します。例えば: フィールド1つのフィールド2 フィールド3つのSharepoint複数行の値ロード時
フィールド1 & 2が捕捉されます。私は順序を変更した場合
彼らが表示されます。 フィールド2 フィールド3 フィールド1つの
フィールド2 & 3が捕獲されています。
これはコード自体の影響を受けていないようですが、SharePointでの読み込みと関係しています。しかし、ここにコードがあります。
$(window).load(function()
{
if(document.readyState === 'complete')
{
getFields();
getValues();
var myStatement = $("textarea[Title='Problem Statement']").closest("span").find("iframe[Title='Rich Text Editor']").contents().text();
var myScope = $("textarea[Title='Scope']").closest("span").find("iframe[Title='Rich Text Editor']").contents().text();
}
});
私はSPUtilityを使って値を取得していますが、他の場所ではサポートが難しいです。
SPUtilityコード:
scope = SPUtility.GetSPField('Scope');
scopeVal = scope.GetValue();
フィールドのすべてが(れるGetFields上記コードごと取り込まれている)とでgetValues()はwindow.load間に上記のコードで呼ばれます。
何か助けやアドバイスをいただければ幸いです。
これは期待通りに機能していますが、私が 'richTextFieldValues'で値を呼び出そうとしたときを除いて、あなたが言及した2つの方法のいずれかで、私は定義されません。実際、私は 'displayVal = richTextFieldValues [" \ "" + currentFieldName + "\" "];'を使用しています。何か案は? – Ryan
Hmm ... 'JSON.stringify'を使って' richTextFieldValues'にどのような値が格納されているかを確認しましょう。 'alert(JSON。stringify(richTextFieldValues)); – Thriggle
この結果は、{"FieldName1": "FieldName1Value"、 "FieldName2": "FieldName2Value"}になります。 7つのフィールドがあります。だから私は最初の2つのフィールドだけをキャプチャするという同じ問題に取り掛かっています。これはページロードでのみ発生し、私はPreSaveAction()関数を持ち、すべての値を完全に取得します。 – Ryan