1

私はお金の価値を次のように検証するためのコードを書いています

       function monyValid()
       {

       var valw=document.getElementById("<%=txtID4.ClientID%>").value;
       var regex  = /(?:^\d{1,3}(?:\.?\d{2})*(?:,\d{2})?$)|(?:^\d{1,3}(?:,?\d{3})*(?:\.\d{2})?$)/            
       if (!isNaN(valw) && isFinite(valw)) 
       {
         document.getElementById("<%=txtID4.ClientID%>").value=parseFloat(valw).toFixed(2);
       }           
         if (regex.test(valw))
         {          
           alert("valid");
         }
         else
         {
           alert("Number is invalid");
         }
       }

今、同じ検証を複数のテキストボックスに適用したいと考えています。異なるテキストボックスに同じ関数を使用するにはどうすればよいですか? 私は何かが欲しい

      function monyValid(txtVal)
       {           
       var valw=document.getElementById(txtVal).value;
       }

この機能を実装するにはどうすればよいですか。

4

1 に答える 1

1

thisを呼び出す代わりに、関数内のパラメーターとして渡して使用しますdocument.getElementById

JavaScript

function monyValid(item) {
    var valw = item.value;
    var regex = /(?:^\d{1,3}(?:\.?\d{2})*(?:,\d{2})?$)|(?:^\d{1,3}(?:,?\d{3})*(?:\.\d{2})?$)/
    if (!isNaN(valw) && isFinite(valw)) {
        item.value = parseFloat(valw).toFixed(2);
    }
    if (regex.test(valw)) {
        alert("valid");
    } else {
        alert("Number is invalid");
    }
}

HTML の使用

<asp:TextBox ID="txtID4" runat="server" onFocus="onEnter(this)" onblur="onLeave(this);monyValid(this);" TabIndex="4"></asp:TextBox>
于 2013-03-29T08:50:53.410 に答える