在输入类型jquery中通过ajax返回值,但不拾取这些值

在输入类型jquery中通过ajax返回值,但不拾取这些值,jquery,ajax,codeigniter,Jquery,Ajax,Codeigniter,我正在发送数据以检查项目是否存在如果是,我返回1,否则返回0。我将codeigniter框架用于jQueryAjax请求,当值在ajax中返回时,我将无法在ajax请求完成后直接选择这些值。我想知道为什么我无法获得返回的值。首先,问题是ajax返回的值有很多空格,所以我改变了我的技术以获得结果,但是我仍然被卡住了,请帮助我。 这是我的控制器代码 function check_upload() { $data=array( 'pnam

我正在发送数据以检查项目是否存在如果是,我返回1,否则返回0。我将codeigniter框架用于jQueryAjax请求,当值在ajax中返回时,我将无法在ajax请求完成后直接选择这些值。我想知道为什么我无法获得返回的值。首先,问题是ajax返回的值有很多空格,所以我改变了我的技术以获得结果,但是我仍然被卡住了,请帮助我。 这是我的控制器代码

function check_upload()
    {
        $data=array(
                    'pname'=>$this->input->post('imgdata'),
                    'current_session_id'=>$this->input->post('session_id'),
                    );
        $data=$this->cartmodel->get_count('temp_cart',$data);
        //echo '<tr><td class="cart-check">'.$data.'<td></tr>';
        echo "<input type=\"text\" class=\"core\" value=\"$data\" data-value=\"$data\">";
    }
尝试更改:

 $.ajax({
           type:"post",
           url:"<?=base_url();?>check_upload",
           data:"session_id="+session_id+"&imgdata="+imgdata,
           success: function(data)
          {
            $(".cart-append").append(data);
          }
       });
        // problem lies here 
    var check=$(".core").attr('data-value');
       alert(check);
$.ajax({
类型:“post”,
url:“检查上传”,
数据:“session_id=“+session_id+”&imgdata=“+imgdata,
成功:功能(数据)
{
$(“.cart append”).append(数据);
}
});
//问题就在这里
var check=$(“.core”).attr('data-value');
警惕(检查);

$.ajax({
类型:“post”,
url:“检查上传”,
数据:“session_id=“+session_id+”&imgdata=“+imgdata,
成功:功能(数据)
{
$(“.cart append”).append(数据);
var check=$(“.core”).attr('data-value');
警惕(检查);
}
});
将async:false添加到ajax调用中也可能对您有所帮助

 $.ajax({
           type:"post",
           async: false,
           url:"<?=base_url();?>check_upload",
           data:"session_id="+session_id+"&imgdata="+imgdata,
           success: function(data)
          {
            $(".cart-append").append(data);
            var check=$(".core").attr('data-value');
            alert(check);
          }
       });
$.ajax({
类型:“post”,
async:false,
url:“检查上传”,
数据:“session_id=“+session_id+”&imgdata=“+imgdata,
成功:功能(数据)
{
$(“.cart append”).append(数据);
var check=$(“.core”).attr('data-value');
警惕(检查);
}
});

simple,
ajax
是异步的,您试图在ajax完成之前获取html的值。在success Handler中移动警报代码我也尝试过这种技术,但它无法获得它所说的undefined值,我认为jquery足够快,当文本框生成时,jquery无法捕获该文本框,谢谢
 $.ajax({
           type:"post",
           url:"<?=base_url();?>check_upload",
           data:"session_id="+session_id+"&imgdata="+imgdata,
           success: function(data)
          {
            $(".cart-append").append(data);
          }
       });
        // problem lies here 
    var check=$(".core").attr('data-value');
       alert(check);
 $.ajax({
           type:"post",
           url:"<?=base_url();?>check_upload",
           data:"session_id="+session_id+"&imgdata="+imgdata,
           success: function(data)
          {
            $(".cart-append").append(data);
            var check=$(".core").attr('data-value');
            alert(check);
          }
       });
 $.ajax({
           type:"post",
           async: false,
           url:"<?=base_url();?>check_upload",
           data:"session_id="+session_id+"&imgdata="+imgdata,
           success: function(data)
          {
            $(".cart-append").append(data);
            var check=$(".core").attr('data-value');
            alert(check);
          }
       });