JS数组变成PHP中相等的数组请高手指点? $city2 = array( array("山西省", "0"), array("河北省", "0"), array("太原市", "山西省").....) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 谢谢你的帮助,我把下面的代码复制出来。我想把下面JS的数组从PHP的数据库中提出来传给JS,在这个关节上我做不到,麻烦你帮我看看。先谢谢了~<script language="JavaScript" type="text/javascript">//ChangeSelect(上一级的值,下一级Select控件的ID值,下一级Select控件要选中的值(即value而非text),数据源数组名,默认显示字符(如:请选择...如果不写的话会用默认值填充)),第一级的上级值为0function ChangeSelect(ParentValue, NextId, NextSelectedValue, ArrObj,DefaultStr){StrObj = eval(document.getElementById(NextId));StrObj.length = 0;//判断它是二级数据源,还是三级if (ArrObj.length > 0){if (ArrObj[0].length == 2){ArrNum = 0;}else{ArrNum = 2;}}//显示所有列表for (i = 0; i < ArrObj.length; i++){if (i == 0){if (DefaultStr == undefined ) DefaultStr="==请选择==";StrObj.options[StrObj.length] = new Option(DefaultStr, "");}if (ArrObj[i][1] == ParentValue){StrObj.options[StrObj.length] = new Option(ArrObj[i][0],ArrObj[i][ArrNum]);}}//选中列表内某一项for (i = 0; i < StrObj.length; i++){if (StrObj.options[i].value == NextSelectedValue){StrObj.options[i].selected = true;}}//激发下一级的onchange事件以实现多级级联StrObj.onchange();}//公司二维数组数据源Office = [["CategoryName","ParentCategoryName"],["业务部","0"],["技术部","0"],["市场部","0"],["业务部小柳","业务部"],["业务部小杨","业务部"],["业务部小菜","业务部"],["技术部老柳","技术部"],["技术部老杨","技术部"],["技术部老菜","技术部"],["市场部柳先生","市场部"],["市场部杨先生","市场部"],["市场部菜鸟","市场部"]]//省市二维数组数据源City2 = [["CategoryName","ParentCategoryName"],["山西省","0"],["河北省","0"],["太原市","山西省"],["运城市","山西省"],["石家庄","河北省"],["廊房","河北省"]]//省市三维数组数据源City3 = [["CategoryName","ParentId","Id"],["北京","0","010"],["山西","0","0359"],["朝阳区","010","001"],["海淀区","010","002"],["豆各庄","001","101"],["十里堡","001","102"],["中关村","002","201"],["上地","002","202"],["运城地区","0359","301"],["太原市","0359","302"],["永济市","301","311"],["小区","302","312"]];</script><br /><form id="form1" name="form1" method="post" action=""> <select name="select" id="office1" style="width:100px" onchange="ChangeSelect(this.value,'office2','',Office,'==人员==')"> </select> <select name="select12" id="office2" style="width:100px" onchange=""> </select> <script language="JavaScript" type="text/javascript">ChangeSelect('0','office1','',Office,'==部门==') </script> <br /> <select name="select2" id="City001" style="width:100px" onchange="ChangeSelect(this.value,'City002','',City2)"> </select> <select name="select2" id="City002" style="width:100px" onchange=""> </select> <script language="JavaScript" type="text/javascript">ChangeSelect('0','City001','',City2) </script> <br /> <select name="select2" id="City3001" style="width:100px" onchange="ChangeSelect(this.value,'City3002','',City3)"> </select> <select name="select2" id="City3002" style="width:100px" onchange="ChangeSelect(this.value,'City3003','',City3)"> </select> <select name="select2" id="City3003" style="width:100px" onchange=""> </select> <script language="JavaScript" type="text/javascript">ChangeSelect('0','City3001','0359',City3) </script> <label> <input type="submit" name="Submit" value="提交" /> </label></form> 楼主是想做select联动吧,你这种做法就是将数据库所用的资源一次都提取出来.其实有两种方式实现这种效果.1 在php中循环,然后在php中生成javascript的变量. 比如说: echo "<script language='javascript'>"; echo "var City3 = []; for($i=0;$i<10;$i++) { //在这里给数组传值 } echo "</script>"; 2 另一种情况是在php中构造数组字符串,然后传给javascript,在javascript再用split函数,将其变为数组.这种方式最常用,因为程序看上去比较好维护,也很直接. 把js的变成php的:<script>City2 = [ ["CategoryName","ParentCategoryName"], ["山西省","0"], ["河北省","0"], ["太原市","山西省"], ["运城市","山西省"], ["石家庄","河北省"], ["廊房","河北省"] ]document.cookie="City2="+City2</script><?php$City2=$_COOKIE["City2"];echo $City2;?>php的转为js的:<?php$City2=...?><script>City2=<?echo $City2></script> 为什么我的ResizeImage JPEG生成略图是黑图? 二维数组????急哦!!! 关于php的post 初学PHP遇到问题,请帮忙看看,谢谢 求教,新手学习数据库操作类,谢谢 jquery报错。。新人求助!谢谢各位。 在网易电子相册中上传图片时,可以对上传的图片进行自动缩放.改变图片大小,请问这种技术是要怎样才能实现?请教了.谢谢! 怪事!!!同一文件!内容字字句句相同,后缀用.html显示正常!改为:.php就报错!!! 一个简单的提交问题 获取目录下的所有文件和目录名称 散分:——调通CSDN和资源管理器树 急招php程序员【深圳】
//ChangeSelect(上一级的值,下一级Select控件的ID值,下一级Select控件要选中的值(即value而非text),数据源数组名,默认显示字符(如:请选择...如果不写的话会用默认值填充)),第一级的上级值为0
function ChangeSelect(ParentValue, NextId, NextSelectedValue, ArrObj,DefaultStr)
{
StrObj = eval(document.getElementById(NextId));
StrObj.length = 0;
//判断它是二级数据源,还是三级
if (ArrObj.length > 0)
{
if (ArrObj[0].length == 2)
{ArrNum = 0;}
else
{ArrNum = 2;}
}
//显示所有列表
for (i = 0; i < ArrObj.length; i++)
{
if (i == 0)
{
if (DefaultStr == undefined ) DefaultStr="==请选择==";
StrObj.options[StrObj.length] = new Option(DefaultStr, "");
}
if (ArrObj[i][1] == ParentValue)
{
StrObj.options[StrObj.length] = new Option(ArrObj[i][0],ArrObj[i][ArrNum]);
}
}
//选中列表内某一项
for (i = 0; i < StrObj.length; i++)
{
if (StrObj.options[i].value == NextSelectedValue)
{
StrObj.options[i].selected = true;
}
}
//激发下一级的onchange事件以实现多级级联
StrObj.onchange();
}
//公司二维数组数据源
Office = [
["CategoryName","ParentCategoryName"],
["业务部","0"],
["技术部","0"],
["市场部","0"],
["业务部小柳","业务部"],
["业务部小杨","业务部"],
["业务部小菜","业务部"],
["技术部老柳","技术部"],
["技术部老杨","技术部"],
["技术部老菜","技术部"],
["市场部柳先生","市场部"],
["市场部杨先生","市场部"],
["市场部菜鸟","市场部"]
]
//省市二维数组数据源
City2 = [
["CategoryName","ParentCategoryName"],
["山西省","0"],
["河北省","0"],
["太原市","山西省"],
["运城市","山西省"],
["石家庄","河北省"],
["廊房","河北省"]
]
//省市三维数组数据源
City3 = [
["CategoryName","ParentId","Id"],
["北京","0","010"],
["山西","0","0359"],
["朝阳区","010","001"],
["海淀区","010","002"],
["豆各庄","001","101"],
["十里堡","001","102"],
["中关村","002","201"],
["上地","002","202"],
["运城地区","0359","301"],
["太原市","0359","302"],
["永济市","301","311"],
["小区","302","312"]
];
</script><br />
<form id="form1" name="form1" method="post" action="">
<select name="select" id="office1" style="width:100px" onchange="ChangeSelect(this.value,'office2','',Office,'==人员==')">
</select>
<select name="select12" id="office2" style="width:100px" onchange="">
</select>
<script language="JavaScript" type="text/javascript">ChangeSelect('0','office1','',Office,'==部门==') </script>
<br />
<select name="select2" id="City001" style="width:100px" onchange="ChangeSelect(this.value,'City002','',City2)">
</select>
<select name="select2" id="City002" style="width:100px" onchange="">
</select>
<script language="JavaScript" type="text/javascript">ChangeSelect('0','City001','',City2) </script>
<br />
<select name="select2" id="City3001" style="width:100px" onchange="ChangeSelect(this.value,'City3002','',City3)">
</select>
<select name="select2" id="City3002" style="width:100px" onchange="ChangeSelect(this.value,'City3003','',City3)">
</select>
<select name="select2" id="City3003" style="width:100px" onchange="">
</select>
<script language="JavaScript" type="text/javascript">ChangeSelect('0','City3001','0359',City3) </script>
<label>
<input type="submit" name="Submit" value="提交" />
</label>
</form>
其实有两种方式实现这种效果.
1 在php中循环,然后在php中生成javascript的变量.
比如说:
echo "<script language='javascript'>";
echo "var City3 = [];
for($i=0;$i<10;$i++)
{
//在这里给数组传值
}
echo "</script>";
2 另一种情况是在php中构造数组字符串,然后传给javascript,在javascript再用split函数,将其变为数组.
这种方式最常用,因为程序看上去比较好维护,也很直接.
<script>
City2 = [
["CategoryName","ParentCategoryName"],
["山西省","0"],
["河北省","0"],
["太原市","山西省"],
["运城市","山西省"],
["石家庄","河北省"],
["廊房","河北省"]
]
document.cookie="City2="+City2
</script>
<?php
$City2=$_COOKIE["City2"];
echo $City2;
?>php的转为js的:
<?php
$City2=...
?>
<script>
City2=<?echo $City2>
</script>