访问ajax页面中声明/定义/初始化的javascript变量

时间:2014-06-24 10:25:28

标签: php jquery ajax

我用:

进行ajax调用

的index.php

$.ajax({
  type:'post',
  url:'abc.php',
  success:function(returned_data)
  {
     // returned_data  contains HTML + javascript code
     // I'd like to access the javascript variable here
     // refer to abc.php's code to see what variable
     // somehow access "new_variable" here
  }
})

abc.php

<table id="first_table">
 <tr>
   .
   .
   .
  <!-- some un-related td content -->
 </tr>
</table>
<script>
  new_variable = $('#first_table').dataTable();
  // now I want new_variable to be available in index.php page; i.e. inside the success
  // function of the ajax method
</script>

这可以实现吗?或任何替代方案来实现这一目标?

2 个答案:

答案 0 :(得分:1)

你可以这样做:

   $.ajax({
        type:'post',
        url:'abc.php',
        success:function(data)
        {
            var new_variable = $(data).find('#first_table').dataTable();
        }
    });

答案 1 :(得分:0)

令人惊讶的是,问题本身似乎消失了。我不知道我做了什么或没有做什么微小的改变,只是简单地使用:

$.ajax({
  type:'post',
  url:'abc.php',
  success:function(returned_data)
  {
     console.log(new_variable);
  }
})

适当地打印出结果......在提出这个问题之前没有发生过这种情况。还有什么是因为它是全局变量,我可以在这个ajax函数之外访问它xD