Jquery 在当前弹出窗口中显示错误消息(从数据库中提取记录)

Jquery 在当前弹出窗口中显示错误消息(从数据库中提取记录),jquery,ajax,codeigniter,Jquery,Ajax,Codeigniter,在进入我当前弹出页面的otp页面弹出窗口之前,我想检查手机号码是否已注册 我的控制器 public function VerificationOTP() { $postData = $this->input->post(); if (isset($postData) && !empty($postData)) { $this->load->model('DoctorSearch');

在进入我当前弹出页面的otp页面弹出窗口之前,我想检查手机号码是否已注册

我的控制器

        public function VerificationOTP() {
        $postData = $this->input->post();
        if (isset($postData) && !empty($postData)) {
            $this->load->model('DoctorSearch');

            $exest = $this->DoctorSearch->checkPhoneNumber($postData,3);
            $data['mobileNumber'] = $this->input->post('mobileNumber');
            $data['loginOTP'] = ($this->input->post('loginOTP'))?$this->input->post('loginOTP'):'0';
            if ($exest['success']) {
                $data['mobilePrefix'] = $exest['mobilePrefix'];
                     $this->session->set_userdata('patmob',$exest['mobileNumber']);
                $this->session->set_userdata('patmobp',$exest['mobilePrefix']);
                $this->session->set_userdata('paturef',$exest['userRef']);

                $this->load->view('pages/otp',$data);

            } else {
        $msg = '<div class="alert alert-danger">';
                $msg .= 'Please Enter Registered Mobile Number';
                $msg .= '</div>';
                $this->session->set_flashdata("message", $msg);

                //$this->session->set_flashdata("message", '');
                redirect('verify-mobilenumber');
            }
        }

}

My script in view page;


              $(document).ready(function () {
            $("#submit").click(function () {
        var mobileNumber = $("#mobileNumber").val();
        $("form[name='mobnumber']").validate({
            rules: {
                mobileNumber: {
                    required: true
                },
            },
            messages: {
                mobileNumber: {
                    required: "Enter Mobile Number"
                },
            },
            submitHandler: function (form) {
                $.ajax({
                    type: "POST",
                    url: "<?php echo base_url('verify-mobilenumber'); ?>",
                    data: {mobileNumber: mobileNumber},
                    success: function (result) {
                    if(result){
                     $("#enter-otp").modal('show');
                     $("#ver-num").html(mobileNumber);

                    }
                    }
                });
            }
        });

    });

});
public function verificationontp(){
$postData=$this->input->post();
if(isset($postData)和&!empty($postData)){
$this->load->model('DoctorSearch');
$exest=$this->DoctorSearch->checkPhoneNumber($postData,3);
$data['mobileNumber']=$this->input->post('mobileNumber');
$data['loginOTP']=($this->input->post('loginOTP'))?$this->input->post('loginOTP'):'0';
如果($exest['success'])){
$data['mobilePrefix']=$exest['mobilePrefix'];
$this->session->set_userdata('patmob',$exest['mobileNumber');
$this->session->set_userdata('patmobp',$exest['mobilePrefix');
$this->session->set_userdata('paturef',$exest['userRef']);
$this->load->view('pages/otp',$data);
}否则{
$msg='';
$msg.='请输入注册手机号码';
$msg.='';
$this->session->set_flashdata(“message”,$msg);
//$this->session->set_flashdata(“message”,“”);
重定向('verify-mobilenumber');
}
}
}
我的脚本在查看页面;
$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
var mobileNumber=$(“#mobileNumber”).val();
$(“form[name='mobnumber'])。验证({
规则:{
手机号码:{
必填项:true
},
},
信息:{
手机号码:{
必填:“输入手机号码”
},
},
submitHandler:函数(表单){
$.ajax({
类型:“POST”,
url:“”,
数据:{mobileNumber:mobileNumber},
成功:功能(结果){
如果(结果){
$(“#输入otp”).modal('show');
$(“#vernum”).html(mobileNumber);
}
}
});
}
});
});
});

我不想打开#输入otp弹出窗口,直到给出注册号。我想显示控制器$msg。='请输入注册手机号码';在我当前弹出的失败消息

中,您需要像这样在$.ajax提交中添加数据类型

在您的视图文件中

    <div class="modal fade" id="enter-otp" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-dialog modal-md">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                <h4 class="modal-title">Error</h4>
            </div>
            <div id="OptBody" class="text-center">
            </div>
        </div>
    </div>
</div>
    <script>
    $.ajax({
           type: "POST",
           url: "<?php echo base_url('verify-mobilenumber'); ?>",
           data: {mobileNumber: mobileNumber},
           dataType: "json",
           success: function (result) {
             if(result.errors){
                $("#enter-otp").modal('show');
                $('#OptBody').append(result.errors);
                $("#ver-num").html(mobileNumber);
             }
           }
        });
    </script>

&时代;
错误
$.ajax({
类型:“POST”,
url:“”,
数据:{mobileNumber:mobileNumber},
数据类型:“json”,
成功:功能(结果){
if(result.errors){
$(“#输入otp”).modal('show');
$('#OptBody').append(result.errors);
$(“#vernum”).html(mobileNumber);
}
}
});
在控制器文件中,创建一个空数组,该数组将保存要返回的数据,并进行json_编码以返回数据

public function VerificationOTP() 
{
    $data = array('errors' => NULL);
    $postData = $this->input->post();
    if (isset($postData) && !empty($postData)) {
        $this->load->model('DoctorSearch');

        $exest = $this->DoctorSearch->checkPhoneNumber($postData,3);
        $data['mobileNumber'] = $this->input->post('mobileNumber');
        $data['loginOTP'] = ($this->input->post('loginOTP'))?$this->input->post('loginOTP'):'0';

        if ($exest['success']) {
            $data['mobilePrefix'] = $exest['mobilePrefix'];
            $this->session->set_userdata('patmob',$exest['mobileNumber']);
            $this->session->set_userdata('patmobp',$exest['mobilePrefix']);
            $this->session->set_userdata('paturef',$exest['userRef']);

            $this->load->view('pages/otp',$data);

        } else {
            $data['errors'] = "<p>Please Enter Registered Mobile Number</p>";
            //$this->session->set_flashdata("message", '');
            //redirect('verify-mobilenumber');
        }
    }
    echo json_encode($data);
}
public function verificationontp()
{
$data=array('errors'=>NULL);
$postData=$this->input->post();
if(isset($postData)和&!empty($postData)){
$this->load->model('DoctorSearch');
$exest=$this->DoctorSearch->checkPhoneNumber($postData,3);
$data['mobileNumber']=$this->input->post('mobileNumber');
$data['loginOTP']=($this->input->post('loginOTP'))?$this->input->post('loginOTP'):'0';
如果($exest['success'])){
$data['mobilePrefix']=$exest['mobilePrefix'];
$this->session->set_userdata('patmob',$exest['mobileNumber');
$this->session->set_userdata('patmobp',$exest['mobilePrefix');
$this->session->set_userdata('paturef',$exest['userRef']);
$this->load->view('pages/otp',$data);
}否则{
$data['errors']=“请输入注册手机号码”

”; //$this->session->set_flashdata(“message”,“”); //重定向('verify-mobilenumber'); } } echo json_编码($data); }
检查两种情况下返回的结果,然后如果(结果==(未输入电话号码时的结果)){}否则{显示弹出窗口}如何在弹出窗口中显示错误消息(从控制器获取)您可以使用警报(结果);但如何在弹出窗口中显示@RyanIf您将在控制器中查看,我创建了一个数组$data,其中键为'errors',值为'message'。因此,在ajax请求中,检查$data['errors']是否存在result.errors。如果是,则可以如下所示显示它`$('#modalBody').append(result.errors)`