我的HTML代码

<form  class="form" id="d_personal_form" action="<?php echo base_url('registerdoctor');?>"  method="post">
    <input type="tel" id="d_phone">
    <button class="btn" type="submit" id="d_send_personal_data">send</button>
</form>


JavaScript代码

 <script>
var input = document.querySelector("#d_phone");
var output = document.querySelector("#d_phone_error_msg");
var iti=intlTelInput(input, {
    allowDropdown: true,
    initialCountry: "auto",
    nationalMode: true,
    preferredCountries: ['ye'],
    utilsScript: "assets/js/utils.js?"
    });
$(document).ready(function(){
    $("#d_send_personal_data").click(function(){
        $.ajax({
            type:'POST',
            url:"<?php echo base_url();?>doctor_c/register_doctor",
            data:{d_phone:iti.getNumber()},
            success: function(data)
            {
                alert(iti.getNumber());
                alert('true data ...');
            },
            error: function(){
                alert('something went wrong...');
            }
        });
    });
});
</script>


我的codeigniter控制器代码

$phone= $this->security->xss_clean($this->input->post('d_phone'));echo $phone;


控制器没有显示任何值,非常感谢您的帮助

最佳答案

我通过在视图中添加HTML代码来找到解决方案

<input type="hidden" id="d_mobile" name="d_mobile" value="">


并将JavaScript编辑为

<script>
    var input = document.querySelector("#d_phone");
    var output = document.querySelector("#d_phone_error_msg");
    var iti=intlTelInput(input, {
        allowDropdown: true,
        initialCountry: "auto",
        nationalMode: true,
        preferredCountries: ['ye'],
        utilsScript: "assets/js/utils.js?"
        });
    $(document).ready(function(){
        $("#d_send_personal_data").click(function(){
            var mobile =iti.getNumber();
            $('#d_mobile').val(mobile);
        });
    });
    </script>


在控制器中,我收到了隐藏输入的值,因为

$phone= $this->security->xss_clean($this->input->post('d_mobile'));echo $phone;


正确发送值

10-05 20:30
查看更多