2017-04-12 13 views
0

以前の機能するウェブサイト(旧ドミノフォーム)から作成したjavascript検証機能を持つフォームがあります。私はそのウェブサイトをxpagesに変換しています。過去のアプリケーションのようにCSJSとしてその機能を保存して閉じるボタンにすることは可能ですか?XPagesサブミットボタンからのCSJS関数呼び出しによる検証

私は、この機能に存在するすべての条件付き検証要件が再作成する必要があるため、尋ねます。 。

document=document1; 
form1 = document.forms[0] ; 
val_AlphaSuffix = form1.Suffix.value ; 
var msg=""; 
form = document.forms[0] ; 
val_Eff_Date = form.Eff_Date.value ; 
if (val_Eff_Date== "") { 
    msg=msg+"Effective Date is missing.\n"; 
} 
:またフォームは私が呼び出しのいくつかの問題点、例を持って感じているタブpannels、と私は検証を呼び出してリフレッシュを避けるために、周りにコーディングしなければならない部分リフレッシュ条件など

を持っています

答えて

0

、誰もがそれぞれの項目の代わりに文書を渡すのより良い方法を持っている場合、私はそれを見てみたいが、私はティム・T.によって、この答えは、おそらく最良の答えだと思うない場合、私は見ることができます:

式を言語(例:#{id:Hours20})は、フィールドのonChangeイベントコードなどのコンポーネント属性のコンテキスト内でのみ解釈できます。コードを別のライブラリに移動すると、コードはもはやコンポーネントの属性ではなくなり、コンポーネント属性で参照できるコードになります。

その他の優れた機能と同様に、クライアント側のJavaScript関数をすべて、文脈依存型のものをパラメータとして受け入れるように設計します。たとえば:

function updateHours(inputId, outputId) { 
    var hours20 = XSP.getElementById(inputId).value; 
    XSP.getElementById(outputId).value = hours20; 
} 

その後、あなたのonChangeイベントは、この関数を参照することができますが、唯一の文脈依存情報を渡す:

updateHours("#{id:Hours20}", "#{id:Hours10}"); 

スクリプトライブラリに再利用可能なビジネスロジックを維持している。この方法は、どの常に良いことですが、それらのライブラリの中には、ページ構造やサーバーサイド変数については何も想定していません。 shareeditflag

は、0:17 ティムTripconyで1月16日'14に答え 7,73611532

0

あなたが見てみたい、いくつかの可動部分があります...あなたが実行したい場合は

全体のクライアント側の検証、それをボタンに結び付けないで、フォームイベントonSubmit="validate(this)"を使用してください。これはパラメータとしてフォームを使用して関数を呼び出すので、適切なフォームがあれば心配する必要はありません。フィールドでクラスパラメータを使用して、一般的な検証要件を指定することができます。 class="mandatory max_50"など

注意:クライアント側の検証は、簡単にバイパスすることができるため、ユーザーの快適さのためだけです。接続が非常に遅い場合を除き、XPagesサーバー側のバリデーターとエラー制御を利用したい場合があります。

更新:のXPagesでhttps://www.notessensei.com/blog/2010/07/meet-the-xsp-object.html

+0

フォームイベントをonSubmit:イベントを追加するXSPオブジェクトを使用できますか?それはxpagesでどのように見えるのだろうか? –

+0

XSP.addPresubmitListener – stwissel

関連する問題