把对象数组转成JASON串,PHP收到后转化成JASON对象进行读取。
参考例子如下:
<script type="text/javascript" src="http://www.coding123.net/rardownload/20110420/20110420113851756.js"></script><!--倒入json.js文件,序列化json对象用的-->
<script type="text/javascript" src="http://www.coding123.net/js/jquery.js"></script>
<script type="text/javascript">
var zNodes =[
{ id:1, pId:0, name:"随意勾选 1", open:true},
{ id:11, pId:1, name:"随意勾选 1-1", open:true},
{ id:111, pId:11, name:"随意勾选 1-1-1"},
{ id:112, pId:11, name:"随意勾选 1-1-2"},
{ id:12, pId:1, name:"随意勾选 1-2", open:true},
{ id:121, pId:12, name:"随意勾选 1-2-1"},
{ id:122, pId:12, name:"随意勾选 1-2-2"},
{ id:2, pId:0, name:"随意勾选 2", checked:true, open:true},
{ id:21, pId:2, name:"随意勾选 2-1"},
{ id:22, pId:2, name:"随意勾选 2-2", open:true},
{ id:221, pId:22, name:"随意勾选 2-2-1", checked:true},
{ id:222, pId:22, name:"随意勾选 2-2-2"},
{ id:23, pId:2, name:"随意勾选 2-3"}
];
$.ajax({
url:'xxxx.php'//改为你的动态页
,type:'POST'
,data:{zNodes:zNodes.toJSONString()}//调用json.js类库将json对象转换为对应的JSON结构字符串
,success:function(rst){alert('PHP接收JSON数据成功!');}
,error:function(xhr){alert('PHP页面有错误!'+xhr.responseText);}
}});
</script>
$zNodes=$_POST["zNodes"];
$json=json_decode($zNodes);//转化为JSON对象
B. php如何传值给js
你弹出的a是字符串(php源码)!你可以考虑,先让php运行输出个隐藏标签并赋值给隐藏标签 然后执行js获取隐藏标签id的值!
C. 将php下拉框中的值在单击后传递给JS中
<script>
varvalueArr=newArray();
varvalueNow;
functiongetValue(obj){
valueNow=obj.value;//当前被选中的值
opts=obj.getElementsByTagName('option');
for(i=0;i<opts.length;i++){
valueArr[i]=opts[i].value; //把每一个option的值都压入数组
}
//展示,你就可以再别的地方直接用了
document.write(valueNow+"<br>"+valueArr);
}
</script>
<selectonfocus="getValue(this);">
<optionvalue="1">1</option>
<optionvalue="2">2</option>
<optionvalue="3">3</option>
</select>
简单的理论就是通过一定的事件触发函数,并在函数中得到你要的值,然后用就好了。
因为select没有点击事件(onclick),所以我用的是得到焦点的事件(onfocus)。然后通过函数把当前的select元素对象传到函数中(函数调用中的this和函数声明中的obj就是当前元素对象)。然后通过直接得到select的值和遍历option得到所有的值,然后存储在一个外部变量中变成全局变量,这样其他函数也就能用着个值了
D. 把值从PHP传值到js中去
1:HTML中的值如何传到JS,下面假设是文件1.php
代码如下:
<html>
<body>
<form action="1.php" method="post">
name:<input type="text" name="username" id="username">
rename:<input type="text" name="username1" id="username1">
<input type="button" value="submit" on CliCk="get()">
</form>
</body>
</html>
JS假如想取文本框中用户输入的name值,这样写
代码如下:
<script language='JavaScript'>
function get()
{
var n=document.getElementById('username').value;
alert (n);
}</script>
这样的话在有调用JS get()时就会弹出警示框,里面的内容就是name的值。
2:假如说JS中的这个取到的name值要传回rename的文本框中,这样写
代码如下:
<script language='JavaScript'>
function get()
{
var n=document.getElementById('username').value;
document.getElementById("username1").value=n;
}</script>
这样的话在下面调用get()就会自动显示上面name输入的值。
3:PHP中取页面的值
代码如下:
<?php
$name=$_REQUEST["username"];
echo $name;
?>
4:PHP的值传回页面
在HTML中插入PHP语言,可以调用PHP中变量的值,也可用Smarty(推荐)。
有了以上这些,不管是HTML页面里的值还是JS中变量的值,都可以轻松的传入PHP,当然,PHP的值也可传到想要的地方。
E. php文件如何向js文件里面传入变量,作为参数
<?php
$a="gewg";
echo " <script>var a='{$a}';</script>";
?>
<script>alert(a); </script>
F. 如何用php传递数组给js脚本
可以可以通过ajax利用json或者xml来传递数组给php文件:
json是js的一种数据格式,可以直接被js解析,php无法直接读取json数据,但是php提供了json_decode函数来对json数据进行转化,从而可以被php脚本访问;