javascript和php传递数据
1、php直接向JavaScript传递参数变量值
本质,php向客户端显⽰第⼀变量值,为JavaScript代码,然后JavaScript代码发⽣作⽤。
$one =1;
alert(<?php echo $one; ?>);
有时候会⽤
<script src="xxx.php?id=1"></script>
这种形式。
举⼀个简单的例⼦来说明:
如在页⾯a.html中⽤下⾯这句调⽤:
<script type="text/javascript" src="b.php?action=test"></script>
<script type="text/javascript" >
alert(jstext);
</script>
在b.php中有这样⼀段PHP代码:
<?
$action=$_GET['action'];
//echo "var jstext='$action'"; //输出⼀句JS语句,⽣成⼀个JS变量,并赋颠值为PHP变量 $action的值
//echo "var jstext='aa'";
echo "var jstext="."'$action'";
>
当执⾏a.html⽂件时,就会调⽤b.php⽂件,并将b.php⽂件的输出作为JS语句来执⾏,所以此处会弹出⼀个提⽰框,内容为JS变量jstext的值,也就是在PHP⽂件中赋给jstext的值.⼩结:
在HTML⾥⽤JS 调⽤⽂件的⽅式调PHP⽂件,则PHP⽂件的输出将会被调⽤页作为JS的代码来⽤.
2在php中写js传递值
$one =1;
$two =2;javascript说明
$js = <<<js
<script type="text/javascript">
var data ={one:$one,two:$two};
);
alert(data.two);
</script>
js;
echo $js;
以.php⽂件结尾的页⾯本质上还是html。我们可以在<?php ?》标签范围外直接写javascript:
x.php
<?php
echo 'hello';
>
<script type="text/javascript">
alert("alert");
</script>
这个毫⽆问题。
3、以上两种,主要是php向js传递值或参数。不过飞龙的做法是过渡法:php向html输出值,js获取html值。
4、那么js向php如何传递值或参数呢?
js获取html的值或参数后,⽤ajax、或表单、或url跳转,向php页⾯传递值或参数。这是常见的办法。
//默认载⼊第1页数据
var commol=$('#commentlist');//alert(commol.length);
var ajaxposturl=siteurl+'/comm-ajax';//alert(commajax);
var pid = commol.attr('rel');  //alert(pid);
var per = commol.attr('title'); //alert(per);
var maxpage = $('#commpages').attr('rel');  //alert(maxpage);
commol.load(ajaxposturl,{pageid:pid,perpage:per,paged:1});//1