在js文件中设置一个全局变量 var param; 然后在页面中给这个变量赋值 param=?php echo $value?; 这样就把把值传递过去了。
创新互联2013年开创至今,是专业互联网技术服务公司,拥有项目成都网站制作、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元砀山做网站,已为上家服务,为砀山各地企业和个人服务,联系电话:18980820575
您好!很高兴为您解答:
目测这种情况用ajax;
input type="button" value="先传给php在让php打印出来" id="btn"/
script
var btn=document.getElementById('btn');
var a='123456';
btn.onclick=function(){
var ajax=new XMLHttpRequest();
ajax.open('GET','a.php?use='+a,true)
ajax.onreadystatechange=function(){
if(ajax.readyState==4){
if(ajax.status==200){
alert(ajax.responseText);
}
}
}
ajax.send();
}
/script
以下是php
?php
$a=$_GET['use'];
echo $a;
这样就把js的变量给了php的变量
望采纳
js仅在 浏览器中运行.
php 仅在服务器端运行.
2者交互, 通常通过 http get/post 协议进行交互.
因此, 要将 js 变量传输到 php, 需通过 get/post 将参数传入.
譬如:
script
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
/script
而 test.php 中, 通过 $_REQUEST["x"] 即可拿到js 请求过来的变量.
追问
感觉你的答案最符合我的需求,只是我还是碰到了问题。
test.php文件中
onchange事件触发test()函数,并将赋值。
script
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
test.php文件中
echo $_REQUEST["x"]并未获取到有效值。echo没有输出。
请问,这到底是什么原因。
追答
是因为 script 中并没有输出由 php 传回的结果.
改成这个试试看.
1
2
3
4
5
6
script
function test(){
var x="abc";
$.ajax("test.php?x="+x),null,function(data){alert(data)});
}
/script
首先,需要赋值的javascript脚本必须要写在PHP的页面中,不能引入进来。在这个页面里,直接写PHP代码就可以了,比如var a = "",这样就行了,javascript能够获取后台传入的变量$a.