2013-07-17 13 views
7

W momencie wejścia w zważywszy na polu EditText wykazać błąd, jeśli ktoś postawi incorrent format adresu IP adsress IP powinny być takie jak 000.000.0.000 plz mi pomócjak potwierdzić wzór w postaci przedstawienia

w HTML5: -

<div data-role="content"> 
    <form id="form"> 
     <div data-role="fieldcontain"> 
        <label for="ip">IP Address/System Name</label> 
        <input name="ip" id="ip" type="text" pattern="((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$">      
     </div> 
     <div style="text-align:center;">     
        <div data-role="button" data-theme="b" data-inline="true" id="button1">Update</div> 
     </div> 
</div> 
+1

HTML5 działa perfekcyjnie, ale za to do pracy trzeba wysłać formularz, ale z twojego kodu widzę, że używasz div do wywoływania funkcji javascript, więc w tej funkcji ręcznie wywołaj –

Odpowiedz

9

walidacji HTML5 do pracy na przedstawienia, musisz umieścić required atrybut w swoich dziedzinach input , chcesz sprawdzić poprawność za pomocą HTML5 i musisz przesłać formularz.

można obsługiwać dane formularzy złożonych przez javascript, i okrywać chcesz obsługiwać przedstawione dane ręcznie, a następnie trzeba określić data-ajax="false" w was form tag

Dla kodu, spróbuj tego

<div data-role="content"> 
<form id="form" data-ajax="false"> 
    <div data-role="fieldcontain"> 
       <label for="ip">IP Address/System Name</label> 
       <input name="ip" id="ip" type="text" required pattern="((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$">      
    </div> 
    <div style="text-align:center;">     
       <input type="submit" value="Submit button" /> 
    </div> 
</form> 
</div> 

A w javascript można zrobić coś podobnego

$("#form").submit(function(e){ 
    e.preventDefault(); 
    //call your method 

}); 
+0

co z maską podsieci? –

2

Jedna trasa można przejść używa mask.js - w twoim przypadku można mieć go zmusić użytkownika do wprowadzania swoich danych w odpowiednim formacie, wstępnie wypełniać „” znaków w IP i uniemożliwić użytkownikowi wprowadzanie wartości nienumerycznych.

Mask.js

A oto skrzypce - http://jsfiddle.net/QF9Lz/2/

kliknięcie w polu tekstowym, zobaczysz pojawiać maskę formatowania i będzie tylko w stanie wprowadzić wartości numeryczne w formacie określonym przez użytkownika.

Tak, po to mask.js w głowie, można zainicjować maskę wprowadzania takiego:

$(document).ready(function() { 
    $('#ip').mask('999.999.9.999'); 
}); 
+1

w jquery mobile będzie działać –

+0

bcoz nie działa w jquery mobile –

+0

idk go nie wypróbował, Czy działa normalna implementacja? – digiliooo

-1

zrobiłem ten regex adres/maska ​​ Na przykład: 10.0.0.0/8

((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){3}\/([1-2][0-9]|[0-9]|3[0-2])$ 

jeśli chcesz tylko regex użytkowania Adres: walidacja wzór

((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){3}$