2012-12-27 5 views
0

가능한 중복 :
Validate email address in Javascript?유효성 검사 이메일 클라이언트 측

어떻게 서버 측 유효성을 검사 할 수없는 경우 자바 스크립트를 사용하여 클라이언트 측에서 이메일을 확인합니까? 나의 이해에서 Javascript는 꺼져서 어떻게 이것이 성취 될 수 있으며 PCI 경고를받지 못하게 할 수 있습니까?

$(document).ready(function() { 

var clearMePrevious = ""; 

// clear input on focus 
$("#email").focus(function() { 
    if($(this).val()==$(this).attr("title")) { 
     clearMePrevious = $(this).val(); 
     $(this).val(""); 
    } 
}); 

// if field is empty afterward, add text again 
$("#email").blur(function() { 
    if($(this).val()=="") { 
     $(this).val(clearMePrevious); 
    } 
}); 

$('#submitemail').click(function() { 
    app.ajax.load({ 
     reqName : 'emailSubmit', 
     url: '$httpUrl('Bronto-OptIn')$?email=' + $('#email').val(), 
     selector : '#emailbox', 
     callback: function(responseText, textStatus) { } 
    }); 
      return false; 
}); 

}); 

<form id="emailsignup_form" name="emailsignup_form" method="post" action="$httpUrl('Bronto-OptIn', 'fid', 'information')$"> 
<div class="fl"><input class="email-signup-input" type="text" title="Enter Your Email Address" value="Enter Your Email Address" name="email" id="email" /></div> 
<div class="fl"><button class="email-signup-btn" value="Submit" name="submitemail" id="submitemail">Submit</button></div> 
<div class="clear">&nbsp;</div> 

+2

왜 수 ' 서버가 유효성을 검사합니까? 클라이언트 측 유효성 검사는 사용자의 업무 수행에 관계없이 항상 안전하지 않습니다. – elclanrs

+1

질문을 완전히 이해하지 못했습니다. 정규 표현식 (** ^. + @. + (\ .. +) + $ **)을 사용하여 클라이언트 측의 유효성을 검사 할 수 있습니다. 그러나 사용자가 JavaScript를 사용할 수없는 경우 서버의 입력을 항상 다시 검증하려고합니다. 이 질문은 PCI와 어떤 관련이 있습니까? – Sam

+1

클라이언트 쪽 유효성 검사는 대부분 사용자가 빠른 피드백을 제공하고 서버가 데이터베이스의 악성 콘텐츠를 가져 오지 않고 악의적 인 입력으로부터 서버를 보호해야하기 때문에 모든 유효성 검사가 서버에서 다시 실행되어야합니다. –

답변

0

클라이언트 측 유효성 검사가 나는 자바 스크립트가 활성화되지 않는 경우에 대체에 넣어 것입니다 필요가있는 경우 - 참조

<script type="javascript"> 
    /* Wire up form submittal */ 
</script> 
<noscript> 
    <p>JavaScript is required to use this form, please enable JavaScript in your browser!</p> 
</noscript> 

이 - How to detect if JavaScript is disabled?

관련 문제