JS :JQuery와 유효성 검사 양식 (CodeIgniter를)
$(document).ready(function(){
$('#username').change(function(){
var username = $('#username').val();
$('#usernamemsg').html('<img src="<?php echo base_url()?>images/ajax_loader.gif"/> Checking');
$.ajax({
type: "POST",
url: "<?php echo base_url()?>user/username_validation",
dataType: "json",
data: "username="+username,
success: function(data){
if(data.valid){
$('#usernamemsg').html(data.msg);
}else{
$('#usernamemsg').html(data.msg);
}
}
});
});
});
조회수 :
<form id="add" method="post" action="">
<table>
<tr>
<td>Username</td>
<td><input type="text" id="username" name="username" />
<div id="usernamemsg"></div></td></tr>
<tr>
<td>Password</td>
<td><input type="password" id="password" name="password" /></td></tr>
<tr>
<td><input type="submit" name="add" value="OK" id="submit" /></td></tr>
</table></form>
컨트롤러 :
public function index(){
$data['title'] = 'Register';
$data['template'] = 'outside/validation/validation';
$this->load->view('templates/home_template',$data);
$add = $this->input->post('add');
if($add){
$data = array(
'username' => trim($this->input->post('username')),
'password' => trim($this->input->post('password')));
$this->data_mod->insert('user',$data);
redirect('registration/welcome');
}
}
public function username_validation(){
$user = $this->data_mod->validation('user',array('username' => $this->input->post('username')));
if($user >= 1){
$msg = array(
'valid' => false,
'msg' => 'Username is already taken');
}else{
$msg = array(
'valid' => true,
'msg' => 'Username is available');
}
echo json_encode($msg);
}
* 내가 영어를 배우려고 해요, 그래서 내가 말 좋지 않아.
제출을 누르면 사용자 이름을 입력 할 때 양식이 js 코드가 올바르게 작동하지만 양식이 사용자 이름 필드에 알리지 않고 서버에 제출됩니다.
누군가 나를 도울 수 있습니까?
사용자 이름이 유효하지 않더라도 양식은 계속 사용자 이름을 수집하여 db에 삽입합니까? – bondythegreat
입력 내용이 비어 있고 알림을 받고 싶습니까? –
@bondythegreat yes! 그게 내 문제 야. Sheikh Heera 제출할 때 js에 해당 조건을 추가하면 필드의 유효성을 검사하지 않고 데이터베이스에 삽입하지 않습니다. –