无法获取通过提交处理程序中的 ajax 提交的表单文本字段的值

我正在尝试获取通过 ajax 提交的文本框的值,但是当我尝试在控制器方法中获取它的值时,它什么也不返回。


这是我的 AJAX 函数和控制器方法:


  jQuery("#frm_xyz").validate({

      rules: {

          otp: {

              required: true

          },

      ....

      ....

      submitHandler: function(form,event) {

          event.preventDefault();

          var from_url=jQuery(form).attr('action');

          jQuery.ajax({

              url: from_url, 

              type: "POST",             

              data: new FormData(document.getElementById("frm_xyz")),

              cache: false,             

              processData: false,      

              success: function(data) {

              }

          });

      }

  });

HTML:


 <?php echo form_open('verify-verification-otp',array('id'=>"frm_xyz")); ?> 

     <input type="text" name="otp" placeholder="OTP" class="form-control" />

     <br />  

     <input type="submit" name="submit" id="btn_verify_contact" class="btn btn-info" value="Verify OTP" />  

 <?php echo form_close(); ?>

但是当我尝试在控制器中获取文本框的值时,我没有得到该值!


PHP:


public function verify_otp()

{

    $otp = $this->input->post('otp');

    print_r($otp);

    die();

}


幕布斯7119047
浏览 111回答 1
1回答

守候你守候我

这可能是由于多种原因 -将表单方法设置为POST-<?php&nbsp;&nbsp; &nbsp;echo form_open('verify-verification-otp',array('id'=>"frm_xyz", 'method'=>"POST"));?>在发送 formData 或 jquery 默认值时设置contentType为false将覆盖它。参考&nbsp;jQuery.ajax({&nbsp; &nbsp; &nbsp; &nbsp; url: from_url,&nbsp; &nbsp; &nbsp; &nbsp; type: "POST",&nbsp; &nbsp; &nbsp; &nbsp; data: new FormData(document.getElementById("frm_xyz")),&nbsp; &nbsp; &nbsp; &nbsp; cache: false,&nbsp; &nbsp; &nbsp; &nbsp; processData: false,&nbsp; &nbsp; &nbsp; &nbsp; contentType: false,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; success: function(data) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; })您不需要 formData 因为您没有发送任何文件,只需使用 serialize就可以了。参考jQuery.ajax({&nbsp; &nbsp; url: from_url,&nbsp; &nbsp; type: "POST",&nbsp; &nbsp; data: $('#frm_xyz').serialize(),&nbsp; &nbsp; cache: false,&nbsp; &nbsp; dataType: 'JSON',&nbsp; &nbsp; success: function(data) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}})看看它是否对你有帮助。
打开App,查看更多内容
随时随地看视频慕课网APP