0

Web サイトの異なるページに 2 つのフォームがありますが、javaScript 検証を再利用したいと考えています。たとえば、次のようになります。

   function notnull() {
   var firstName = document.forms["newsletter"]["firstName"].value;
   if (firstName === null || firstName === "") {
       inlineMsg('firstName', 'You must enter your name.', 3000000);      
       return false;
   } else {
       return true;
   }
}

このコードはニュースレター フォーム (例: document.forms["newsletter"]["firstName"].value) にのみ適していますが、"contact" フォームにも使用したいと考えています。

document.forms[][].value のように変数を動的に構築できますか?

4

1 に答える 1

0

notnull 関数を変更して、2 つのパラメーターを受け入れることができます

function notnull(formType,fieldName){
   var fieldName = document.forms[formType][fieldName].value;
   if(fieldName === null || fieldName === "") {
      inlineMsg(fieldName, 'You must enter your '+fieldName,3000000);
      return false;
   } else
      return true;
}

その線に沿った何か。inlineMsg の機能がわかりません。または、エラー メッセージのエラー フレンドリ名を関数に渡すこともできます。

上記を処理するためのより良いアプローチがあると確信していますが、コードのみを見て、それが私が提案するものです。

于 2013-06-02T11:58:24.880 に答える