PHP表单使用AJAX传递post数据

时间:2014-04-01 12:18:20

标签: javascript php jquery ajax codeigniter

对不起,如果之前已经回答了这个问题但是我已经填充了来自PHP的数据,即。带有选项的下拉菜单。我正在使用CodeIgniter并希望将php变量发送回我的控制器。

我使用JQuery找到了以下Ajax post函数:

$.ajax({
  type: "POST",
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

在我的情况下,我有一个名为main的控制器和一个名为postBack()的方法,所以我假设我会输入以下内容:

$.ajax({
  type: "POST",
  url: http://localhost/project/main/postback,
  data: data,
  success: success,
  dataType: dataType
});

但是我不知道如何使用代码传递PHP变量或者在数据或数据类型字段中输入什么,我再次道歉,如果这已经得到解答但我似乎无法解决这个问题。

非常感谢提前

有人可以告诉我,如果我执行上述操作过于复杂,我可以使用以下命令获取控制器上的所有数据: $ _POST

3 个答案:

答案 0 :(得分:0)

用单引号括起您的网址。

<script>
$(document).ready(function(){
$("#sel").change(function(){
var data=(this).val();
 $.ajax({
      type: "POST",
      url: 'http://localhost/project/main/postback',
      data: data,
      success: function(data){
    alert(data);
    }

    });

})

})
</script>



  //html part  
    <select id="sel">
    <option>1</option>
    <option>2</option>
    </select>

答案 1 :(得分:0)

PHP变量可以作为像这样的变量传递

localhost/project/main/postback/variable

在这个变量中应该被视为我们传递的参数。 所以在这里你可以使用

'localhost/project/main/postback/'.<?=$variable?>.''

否则您可以将变量值分配给表单中的任何隐藏字段,并可以从已发布的表单数据本身访问$this->input->post('hiddenfieldname');

答案 2 :(得分:0)

您可以将jquery用于此

在php页面中使用

<a href='#' onclick="showDiv('<?php echo $val; ?>')" class="classname">Edit</a>

Jquery函数

<script>
function showDiv(id)
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {                       
        //do something as it is equivalent to an ajax success function
    }
}
xmlhttp.open("GET","your-php-page.php?id="+id,true);
xmlhttp.send();
</script>
相关问题