2016-08-16 13 views
0

私はJQueryの初心者です。さて、私はサーバーにポストバックするフォームを作ろうとしています。送信する前に検証する必要があるIPアドレスを含むいくつかの "入力"があります。今私はうまく動作するjavascript関数を行っている。しかし、今私はjqueryの選択にこの関数を追加しようとしています。それをどうやって行うのか混乱させるだけです。javascriptでIPアドレスの検証を試みてください。

これは私の検証JavaScriptコードです。

function ValidateIPaddress(Ipfield) 
{ 
    IpAddr=Ipfield.value; 
    var ipformat = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; 

    if(!IpAddr.match(ipformat)) 
     return true; 
    else 
     return false; 

} 

これは、この検証のための実装方法です。

<input type= "text" name= "LocalIP" style= "margin-right:10px " value="192.168.1.193" class="ip" onfocusout="ValidateIPaddress(document.getElementById('LocalIp'))" id="LocalIp" >   Remote VIP Address :    
       <input type= "text" name= "RemoteVIPAddr" style= "margin-right:10px" value="234.5.6.7" class="ip" onfocusout="ValidateIPaddress(document.getElementById('RemoteIp'))" id="RemoteIp" > 
       Remote VIP Port :    
       <input type= "text" name= "RemoteVIPPort" style= "margin-right:10px" value="5004" class="ip" onfocusout="ValidatePort(document.getElementById('RemoteVIPPort'))" id="RemoteVIPPort"> 

ここで、無効な入力があるかどうかを常に確認するためにjquery selectionを使用します。これは私自身のデザイン機能と同じようなものです。

$("input.ip:visible").filter(function() { return this.ValidateIPaddress === true }).addClass("invalid"); 

誰でも知っていますか?

+0

「真」または「偽」を返す検証関数を記述します。その後、 'filter'関数と' ValidateIPAddress'の両方でそれを使うことができます。 – Barmar

+0

私は質問文を更新しました – Pawan

+0

これは私が試したものですが、動作していないようです。 – Pawan

答えて

2

フィルタ機能でValidateIPAddressを呼び出すのではなく、DOM要素に空でないプロパティ(ValidateIPAddress)があるかどうかをテストしているだけです。

$("input.ip:visible").filter(function() { 
    return ValidateIPAddress(this); 
}).addClass("invalid"); 
+0

今は問題ありません。どうもありがとう!。 – Pawan

関連する問題