xin code kiểm tra email bằng javascript

Thảo luận trong 'Thảo luận website, Forum' bắt đầu bởi shine, 2 Tháng một 2011.

  1. Offline

    shine

    • Windows NT

    Số bài viết:
    91
    Đã được thích:
    73
    Điểm thành tích:
    60
    Gần thi rồi. có ai có code kiểm tra Email bằng javacscript thì đưa lên cho mọi người tham khảo với
  2. Offline

    van_hieu_lt03A

    • Thành Viên Mới

    Số bài viết:
    3
    Đã được thích:
    3
    Điểm thành tích:
    0
    xin thì cho thôi đây nè bạn
    Mã:
    <html>
    <head>
    <title>Check Form Register</title>
    <META name="Author" content="Scorpion">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <script language="JavaScript">
        function checkinput(){
            username=document.myform.username;
            password=document.myform.password;
            password1=document.myform.password1;
            hoten=document.myform.hoten;
            diachi=document.myform.diachi;
            email=document.myform.email;
            dienthoai=document.myform.dienthoai;
            reg1=/^[0-9A-Za-z]+[0-9A-Za-z_]*@[\w\d.]+.\w{2,4}$/;
            testmail=reg1.test(email.value);
            if(username.value==""){
                alert("Hãy chọn tên đăng nhập");
                username.focus();
                return false;
            }
            if(password.value==""){
                alert("Chưa nhập mật khẩu");
                password.focus();
                return false;
            }
            if(password1.value==""||password1.value!==password.value){
                alert("Mật khẩu lần 2 chưa khớp");
                password1.focus();
                return false;
            }
            if(hoten.value==""){
                alert("Hãy nhập vào họ tên của bạn");
                hoten.focus();
                return false;
            }
            if(diachi.value==""){
                alert("Chưa nhập địa chỉ");
                diachi.focus();
                return false;
            }
            if(!testmail){
                alert("Địa chỉ email không hợp lệ");
                email.focus();
                return false;
            }
            if(isNaN(dienthoai.value)){
                alert("Số điện thoại chưa chính xác");
                dienthoai.focus();
                return false;
            }
            else alert('OK, đã nhập đúng dữ liệu');
            return true;
        }
    </script>
    </head>
    
    <body>
    <form name="myform" method="post" action="register_do.asp" onsubmit="return checkinput();">
            <table align="center">
              <p><strong><font color="#FF0000">Đăng ký thành viên</font></strong>
                 </p>
              <tr>
                <td>Xin vui lòng nhập đúng<br />
                  các thông tin cá nhân</td>
              </tr>
              <p></p>
              <tr>
                <td><b>Tên đăng nhập:</b></td>
                <td><input type="text" name="username" /></td>
              </tr>
              <tr>
                <td><b>Mật khẩu:</b></td>
                <td><input type="password" name="password" /></td>
              </tr>
              <tr>
                <td><b>Nhập lại Mật khẩu:</b></td>
                <td><input type="password" name="password1" /></td>
              </tr>
              <tr>
                <td><b>Họ tên:</b></td>
                <td><input type="text" size="30" name="hoten" /></td>
              </tr>
              <tr>
                <td><b>Địa chỉ:</b></td>
                <td><input type="text" size="30" name="diachi" /></td>
              </tr>
              <tr>
                <td><b>Email:</b></td>
                <td><input type="text" size="30" name="email" /></td>
              </tr>
              <tr>
                <td><b>Số điện thoại:</b></td>
                <td><input type="text" size="20" name="dienthoai" /></td>
              </tr>
              <p align="center"> </p>
            </table>
            <p align="center">
                <input type="submit" value="Đăng ký" style="color:yellow;background:green">
                <input type="reset" value="Làm lại" style="color:yellow;background:green">
            </p>
          </form>
    </body>
    </html>
    
    
    theo yêu cầu của lyvinhr00m

    này thì onblur:

    Mã:
    <html>
    <head>
        <title> Check Form - OnBlur</title>
    </head>
    <script language="javascript">
    function tieude_Onblur() {
            td=formlienhe.txttieude.value;
            var loitd=document.getElementById("IDtieude");
            
            if(td=="") {
                loitd.innerHTML="Tiêu đề không được bỏ trống !";
                formlienhe.txttieude.focus();
                return;
            }
            loitd.innerHTML="";
        }
    function hoten_Onblur() {
            ht=formlienhe.txthoten.value;
            var loiht=document.getElementById("IDhoten");
            
            if(ht=="") {
                loiht.innerHTML="Họ tên không được bỏ trống !";
                formlienhe.txthoten.focus();
                return;
            }
            loiht.innerHTML="";
        }
    function diachi_Onblur() {
            dc=formlienhe.txtdiachi.value;
            var loidc=document.getElementById("IDdiachi");
            
            if(dc=="") {
                loidc.innerHTML="Địa chỉ không được bỏ trống !";
                formlienhe.txtdiachi.focus();
                return;
            }
            loidc.innerHTML="";
        }
    function dienthoai_Onblur() {
            dt=formlienhe.txtdienthoai.value;
            var loidt=document.getElementById("IDdienthoai");
            
            if(dt=="") {
                loidt.innerHTML="Điện thoại không được bỏ trống !";
                formlienhe.txtdienthoai.focus();
                return;
            }
            loidt.innerHTML="";
            
            if(isNaN(dt)) {
                loidt.innerHTML="Bạn phải nhập vào là số !";
                formlienhe.txtdienthoai.focus();
                return;
            }
            loidt.innerHTML="";
            
            
        }
    function email_Onblur() {
            mail=formlienhe.txtemail.value;
            var loimail=document.getElementById("IDemail");
            
            dangmail= /^[w.-]+@[w.-]+.[A-Za-z]{2,4}$/
            kq=dangmail.test(mail);
            if(mail=="") {
                loimail.innerHTML="Email không được bỏ trống !";
                formlienhe.txtemail.focus();
                return;
            }
            loimail.innerHTML="";
            
            if(!kq) {
                loimail.innerHTML="Sai định dạng mail ! VD: [email]gacon@gmail.com
    
    [/email]";
                formlienhe.txtemail.focus();
                return;
            }
            loimail.innerHTML="";
            
            
        }
    function noidung_Onblur() {
            nd=formlienhe.txtnoidung.value;
            var loind=document.getElementById("IDnoidung");
            
            if(nd=="") {
                loind.innerHTML="Nội dung không được bỏ trống !";
                formlienhe.txtnoidung.focus();
                return;
            }
            loind.innerHTML="";
            
        }
        
    formlienhe.submit();
    </script>
    <body>
        <fieldset style="width:700px">
                <legend>   o.0 Liên hệ 0.o   </legend>
                <form id="formlienhe" name="formlienhe" method="post" action="">
                  <table width="706" height="416" border="0" cellpadding="0" 
    
    cellspacing="0" >
                    <!--DWLayoutTable-->
                    <tr>
                      <td width="100" height="41" align="right" valign="middle" 
    
    style="color:#HHHHHH"><div align="left">Tiêu đề *  </div></td>
                      <td width="626"><label>
                        <input name="txttieude" type="text" id="txttieude" size="40" 
    
    onBlur="tieude_Onblur()"/>
                      <span id="IDtieude" style="color:#FF0000; font-
    
    size:14px"></span></label></td>
                    </tr>
                    <tr>
                      <td height="41" align="right" valign="middle" 
    
    style="color:#HHHHHH"><div align="left">Họ tên * </div></td>
                      <td><input name="txthoten" type="text" id="txthoten" size="40" 
    
    onBlur="hoten_Onblur()"/>  <span id="IDhoten" style="color:#FF0000; font-
    
    size:14px"></span></td>
                    </tr>
                    <tr>
                      <td height="41" align="right" valign="middle" 
    
    style="color:#HHHHHH"><div align="left">Địa chỉ *  </div></td>
                      <td><input name="txtdiachi" type="text" id="txtdiachi" size="40" 
    
    onBlur="diachi_Onblur()" /> <span id="IDdiachi" style="color:#FF0000; font-
    
    size:14px"></span></td>
                    </tr>
                    <tr>
                      <td height="60" align="right" valign="middle" 
    
    style="color:#HHHHHH"><div align="left">Điện thoại *  </div></td>
                      <td><input name="txtdienthoai" type="text" id="txtdienthoai" 
    
    size="25"  onBlur="dienthoai_Onblur()"/> <span id="IDdienthoai" 
    
    style="color:#FF0000; font-size:14px"></span></td>
                    </tr>
                    <tr>
                      <td height="42" align="right" valign="middle" 
    
    style="color:#HHHHHH"><div align="left">Email *  </div></td>
                      <td><input name="txtemail" type="text" id="txtemail" size="40" 
    
    onBlur="email_Onblur()" /> <span id="IDemail" style="color:#FF0000; font-
    
    size:14px"></span></td>
                    </tr>
                    <tr>
                      <td height="99" align="right" valign="top" 
    
    style="color:#HHHHHH"><div align="left">Nội dung *  </div></td>
                      <td valign="top"><label>
                        <textarea name="txtnoidung" cols="60" rows="6" id="txtnoidung" 
    
    onBlur="noidung_Onblur()"></textarea>
                      <span id="IDnoidung" style="color:#FF0000; font-
    
    size:14px"></span></label></td>
                    </tr>
                    <tr>
                      <td rowspan="2" align="right" valign="top"><div 
    
    align="justify"></div></td>
                      <td height="49"><label>
                        <input name="none" type="submit" id="Submit" value="   Gửi   " 
    
    />
                        <input type="reset" name="Reset" value="   Xóa   " />
                      </label></td>
                    </tr>
                    <tr>
                      <td height="33" align="right"><span class="style3 style1">(*) 
    
    Thông tin bắt buộc phải nhập ! </span></td>
                    </tr>
                  </table>
                </form>
                </fieldset>
    </body>
    </html>  
    
    chúc thi tốt
    congthangitvnchimhoa thích bài này.
  3. Offline

    chimhoa

    • Thành Viên Mới

    Số bài viết:
    50
    Đã được thích:
    9
    Điểm thành tích:
    0
    Cũng đang cần cám ơn bạn nhé!
  4. Offline

    lyvinhr00m

    • cụ lý

    Số bài viết:
    1.234
    Đã được thích:
    930
    Điểm thành tích:
    900
    kiểm ở đâu ra thế bạn, trên lớp hình như không có học viết cái kiểu này ah.

    Nhìn qua thì code này chưa đầy đủ lắm:
    Vd kiểm tra username, password, họ tên, địa chỉ,.. chỉ kiểm tra còn trống hay là đã nhập.
    Hàm testmail thì nói thật: chưa hiểu được :aliens:
    Phần kiểm tra chỉ thực hiện khi ta bấm nút "Đăng kí", nên khi có nhiều lỗi nó chỉ thông báo 1 lỗi thôy...
    nên dùng onchange sẽ dễ phát hiện chỗ sai hơn

    Tks bạn đã chia sẽ. mọi ng ai có thì share tiếp nha, cùng nhau góp ý:handshake:

    Ai hiểu đc đoạn này không chỉ với
  5. Offline

    shine

    • Windows NT

    Số bài viết:
    91
    Đã được thích:
    73
    Điểm thành tích:
    60
    Đoạn này nghĩa là sao vậy bạn?

    @LyVinh: Mình nghĩ rằng onblur chắc hợp hơn
  6. Offline

    lyvinhr00m

    • cụ lý

    Số bài viết:
    1.234
    Đã được thích:
    930
    Điểm thành tích:
    900
    ở mình nhầm...
    Bữa nay mình vẫn chưa ôn JS nên chưa làm lại mấy bài này, chứ không cũng post lên cho mọi ng góp ý
  7. Offline

    integer

    • Tiếu Ngạo Giang Hồ

    • :-?
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    Khi thi bạn không cần làm quá dài, mất thời gian mà không cần thiết. nếu đề ra chỉ yêu cầu không có ký tự trắng (' '), có ký tự @... thì làm từng đó thôi.
    Mã:
    function cmail(form1)
    {
        c=form1.textfield2.value.indexOf('@');
        blank=form1.textfield2.value.indexOf(' ');
        if(c<1)
            alert("Mail ko hợp lệ, thiếu ký tự @");
        if(blank>=1)
            alert("Mail ko chứa ký tự trắng");
    };
    
  8. Offline

    sunboy

    • Thành viên sáng lập

    • No thing
    Số bài viết:
    1.616
    Đã được thích:
    1.340
    Điểm thành tích:
    1.000
    Đoạn này kiểm tra định dạng của email phải không nhỉ.
  9. Offline

    lyvinhr00m

    • cụ lý

    Số bài viết:
    1.234
    Đã được thích:
    930
    Điểm thành tích:
    900
    Ai có hàm kiểm tra mail mà: kí tự đầu tiên không đc là số không ??
  10. Offline

    clandn.angel

    • friend

    Số bài viết:
    655
    Đã được thích:
    361
    Điểm thành tích:
    450
    Tất cả trên google.com. Làm gì mất công vậy
    Mà cái code kiểm tra email băng javascript làm gì mà ra thi kia. Trường dạy javascript làm gì đến trình đó mà bắt học sinh làm. Chủ yếu các bài cơ bản thôi. Còn nói riêng về javascript thì biến thể muôn dạng, khó lòng mà biết hết được.
    Thấy cuốn Sổ tay lập trình 1.0 đã đầy đủ những thứ về bộ môn này
    Nếu bạn nào thích mình share ebook của w3school.com về mọi người cùng xem. Mới thu lượm được. Tuy version cũ nhưng mà cũng rất hay. w3school.com có lẽ ai học website mà không biết trang web này nhỉ
    Thân
    Mr.Nobita
  11. Offline

    lyvinhr00m

    • cụ lý

    Số bài viết:
    1.234
    Đã được thích:
    930
    Điểm thành tích:
    900
    Ai nhớ dạng đề thì năm ngói không???
  12. Offline

    Xautrai_LT03B

    • Windows 1.0

    Số bài viết:
    38
    Đã được thích:
    15
    Điểm thành tích:
    10
    Sổ tay tui có cả yến Quan trọng có đọc không?nói thé thì nói lòm j?
  13. Offline

    chip

    • Thành viên sáng lập

    • Chíp sún
    Số bài viết:
    777
    Đã được thích:
    778
    Điểm thành tích:
    560
    --->học, học không ngừng nghĩ, đã xác định mình học lập trình rùi thì phải chăm lo cho mục đích và sự lựa chọn của mình, huống chi ngành lập trình là một ngành đòi hỏi sự tìm tòi nguyên cứu một cách nghiêm túc.Có lẻ trường sẽ ko dạy mấy cái này, nhưng phải nguyên cứu nó vì những thứ trên thế giới này nói chung và các hàm, thuật toán trong ngành lạp trình nói riêng điều có một giá trị nhất định.Có thể bây giờ chưa dùng đến nhưng anh chắc sau này em sẽ đụng lại nó.--->xem lại việc nguyên cứu của mình.
    --->đoạn check này chưa chính xác lém, chính xác hơn phải là thế này
    Mã:
    ^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$
    
    --->một biểu thức chính vi dùng để kiểm tra địa chỉ email khi em nhập vào có phù hợp với khuôn dạng như trên không cụ thể
    ví dụ một địa chỉ email bình thường sẽ có khuôn dạng như sau: tenban123@yahoo.com
    thì đoạn tenban123 có thể nằm trong một số trường hợp [0-9A-Za-z]
    @ chính là @
    còn yahoo chính là một trong các trường hợp ([0-9a-z][0-9a-z-]
    \. chính là "." sau yahoo
    cuối cùng là [a-z]{2,3} có domain có thể .com, net,... có độ dài thường là 2,3.
  14. Offline

    giolovebiz_2210

    • Thành Viên Mới

    Số bài viết:
    1
    Đã được thích:
    0
    Điểm thành tích:
    0
    mình mới học js k pit viết thế này có được không.mọi người xem có gì sai chỉ giúp mình ha.
    function ktemail(email){
    var kt=/^[a-zA-Z0-9_-.]+@[a-zA-Z]+.[a-zA-Z]{2,4}$/;
    if(!kt.test(form1.email.value))
    {
    alert("địa chỉ email sai");
    document.form1.email.focus();
    return false;
    }
    return true;
    }
    Mình xin giải thích về biểu thức trên:
    Mình sử dụng biểu thức quy tắc.
    /^/:Phần bắt đầu cho biểu thức quy tắc.
    [a-zA-Z0-9_-.]: chấp nhận các kí tự trong dấu []
    {2,4}: có từ 2 đến 4 kí tự.
    $:kí tự kết thúc hoặc kí tự cuối.
  15. Offline

    oahqnam8045

    • Thành Viên Mới

    Số bài viết:
    2
    Đã được thích:
    0
    Điểm thành tích:
    0
    Định dạng Email của bạn thiếu rồi. Nếu như vậy sẽ không phù hợp với địa chỉ email dài
    Ví dụ như yahoo vietnam: xxx.@yahoo.com.vn chẳng hạn. Đoạn trên chỉ giải quyết được @yahoo.com thôi cộng thêm .vn sẽ báo lỗi
  16. Offline

    tangvanbinh

    • Đội cứu hộ máy tính

    Số bài viết:
    449
    Đã được thích:
    197
    Điểm thành tích:
    140
    code kiểm tra ko cho @ ở cuối , ở đầu chỉ cho @ ở giữa
    Mã:
     <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>check mail- Tăng Văn Bình</title>
     <script type="text/javascript">
     function checkEmail() { var email = document.getElementById('email');
     var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
     if (!filter.test(email.value)) { alert('Hay nhap dia chi email hop le.\nExample@gmail.com');
     email.focus; return false; }
     else{ alert('OK roi day, Email nay hop le.'); } } </script>
     </head>
     <body>
     <form name="form1" id="form1" method="post">
     <input type="text" name="email" id="email" size="40">
     <input type="button" name="check" value="Check" onclick="checkEmail();">
     </form>
     </body>
     </html>
  17. Offline

    WhiteBook

    • Windows 95

    Số bài viết:
    64
    Đã được thích:
    23
    Điểm thành tích:
    120
    Anh Nô cho em cái ebook về tìm hiểu được không,thầy chỉ dạy mà không chỉ thực hành,buồn quá!!! Cám ơn anh nhiều
  18. Offline

    tangvanbinh

    • Đội cứu hộ máy tính

    Số bài viết:
    449
    Đã được thích:
    197
    Điểm thành tích:
    140
    thầy nào dạy mà ko mà không hướng dẫn thực hành e
  19. Offline

    clandn.angel

    • friend

    Số bài viết:
    655
    Đã được thích:
    361
    Điểm thành tích:
    450
    ặc, tính đào mộ à em!
    javascript học ít thôi k giỏi á :))
    giờ có html5 và jQuery rất là hay em, JS đua k nổi đâu :D. Trường mình dạy JS cũng tương đôi thôi, dạy từng nào ra thi từng đó, k ra thêm đâu ;)
    Em thích thì cứ xem tài liệu trên mạng, rất nhiều, đã học lập trình thì nên đầu tư, mà thú thật là về web a hơi bị gà :D
  20. Offline

    alofocus

    • Thành Viên Mới

    Số bài viết:
    5
    Đã được thích:
    0
    Điểm thành tích:
    0
    Có rất nhiều thứ js làm được mà một framework như jquery ko thể làm được. Không hiểu nền tảng mà đâm đầu vào framework thì đúng là mù quáng đấy chú em ạ.
    Muốn thực sự hiểu về cách kiểm email đúng nghĩa thì nên biết một chút về regex (Regular expression) - ai muốn biết thì lên google search nhé.
    Còn chú nào muốn đơn giản thì cứ xài jquery validate hoặc chỉnh cái "type" trong input của email là "email" là nó tự kiểm lỗi (Nhấn submit là nó bắt lỗi ngay)

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí