送信ボタンからSSJSを使用してフォームを検証しています。ユーザーにエラーを表示するには、拡張ライブラリダイアログボックスを使用しています。XpagesでSSJSを使用してフィールドにフォーカスを設定しますか?
SSJSを使用して、検証に失敗したフィールドにフォーカスを設定するにはどうすればよいですか?
私ができることの1つは、ダイアログボックスの[OK]ボタンでCSJSを使用することです。次のように私はOKボタンで閉じます。
var errorField = '#{javascript:viewScope.get("errorField")}';
は、私は次のことを試してみましたが、動作するようには思えません。
if (errorField != null && errorField != "")
{
var ef = document.getElementsByName("#{id:" + errorField + "}");
ef.focus();
}
私は実際の検証を行う際にスコープ変数errorFieldを設定しています。 "..." =
var ef = dojo.byId('#{id'+errorField+'}');
ef.focus();
getElementsByNameが名前を持つ複数の要素を探しているし、配列を返す:
アップデートと同様です。スコープ変数の値を表示するifブロック内に警告を追加し、適切な値を表示します。だから、それは働かないだけの焦点です。 –