对不起,如果之前已经回答了这个问题但是我已经填充了来自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
答案 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>