帮忙解决一个新手问题

LiveAsaMonster 2011-08-29 04:22:04

推荐位位置:<select id="source" name="source" style="width:150px">
<option value="" selected>请选择</option>
<?php foreach ($GLOBALS['source_recommend'] as $_k=>$_v)?>
<option value="<?php echo $_k;?>"><?php echo $_v;?></option>
</select>
推荐位:<select id="position" name="position" style="width:150px">
<option value="" selected>请选择</option>
<option value="" ></option>
</select>

我要在第一个选择框中选择一项之后,第二个选择框自动跳出所选项的子选项,如何实现?用到的数组如下:比如在第一个选择框选择了资讯(news),第二个选择框对应的就是数组news_position中的值?

/*
*第一个选择框用到的数组
*/
$source_recommend = array(
'news'=>'资讯',
'topic'=>'话题',
'usershow'=>'会员秀',
'activity'=>'活动',
);
/*
*第二个选择框用到的数组
*/
$news_position = array(
'index_news_1'=>'a',
'index_news_2'=>'b',
'index_news_3'=>'c',
'index_news_4'=>'d',
'index_news_5'=>'e',
'index_news_6'=>'f',
'index_news_7'=>'g',


);

$topic_position = array(
'topic_topic_1'=>'h',
'topic_topic_2'=>'i',

);

$usershow_position = array(
'index_usershow_1'=>'j',
'index_usershow_2'=>'k',
'index_usershow_content_1'=>'l',
'usershow_usershow_1'=>'m',
'usershow_usershow_2'=>'n',

);

$activity_position = array(
'ground_activity_1'=>'p',

);
...全文
108 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
码无边 2011-08-31
  • 打赏
  • 举报
回复
你自己去搜搜二级联动。
zlking02 2011-08-30
  • 打赏
  • 举报
回复
这是AJAX做的事情
只要开心就好 2011-08-29
  • 打赏
  • 举报
回复
用jquery来做,或者用纯js也OK。
  • 打赏
  • 举报
回复
重新发一遍,刚才那个弄乱了

推荐位位置:
<select id="source" name="source" style="width:150px" onchange="changes(this.value)">
<option value="" selected>请选择</option>

<option value="news">资讯</option>
<option value="topic">话题</option>
<option value="usershow">会员秀</option>
<option value="activity">活动</option>
</select>
推荐位:
<div id="two">
<select id="position" name="position" style="width:150px">
<option value="" selected>请选择</option>
<option value="" ></option>
</select>
</div>

前提是调用了jquery文件

<script>
function changes(v){
var url='selectphp.php';
var date='ac=action&val='+v;
$.post(url,date,function(x){
$('#two').html(x);
})
}
</script>

selectphp文件

<?php
if(isset($_POST['ac']) && $_POST['ac']=='action'){
$val=$_POST['val'];
$news= array(
'index_news_1'=>'a',
'index_news_2'=>'b',
'index_news_3'=>'c',
'index_news_4'=>'d',
'index_news_5'=>'e',
'index_news_6'=>'f',
'index_news_7'=>'g',


);

$topic= array(
'topic_topic_1'=>'h',
'topic_topic_2'=>'i',

);

$usershow= array(
'index_usershow_1'=>'j',
'index_usershow_2'=>'k',
'index_usershow_content_1'=>'l',
'usershow_usershow_1'=>'m',
'usershow_usershow_2'=>'n',

);

$activity= array(
'ground_activity_1'=>'p',

);

echo '<div id="two"><select id="position" name="position" style="width:150px">';
foreach($$val as $k=>$v){


echo '<option value="'.$k.'" >'.$v.'</option>';

}
echo '</select></div>';

}

?>




  • 打赏
  • 举报
回复
我写了一遍,用ajax

推荐位位置:
<select id="source" name="source" style="width:150px" onchange="changes(this.value)">
<option value="" selected>请选择</option>

<option value="news">资讯</option>
<option value="topic">话题</option>
<option value="usershow">会员秀</option>
<option value="activity">活动</option>
</select>
推荐位:
<div id="two">
<select id="position" name="position" style="width:150px">
<option value="" selected>请选择</option>
<option value="" ></option>
</select>
</div>

前提是调用了jquery文件

<script>
function changes(v){
var url='selectphp.php';
var date='ac=action&val='+v;
$.post(url,date,function(x){
$('#two').html(x);
})
}
</script>
selectphp文件
[code=PHP]
<?php
if(isset($_POST['ac']) && $_POST['ac']=='action'){
$val=$_POST['val'];
$news= array(
'index_news_1'=>'a',
'index_news_2'=>'b',
'index_news_3'=>'c',
'index_news_4'=>'d',
'index_news_5'=>'e',
'index_news_6'=>'f',
'index_news_7'=>'g',


);

$topic= array(
'topic_topic_1'=>'h',
'topic_topic_2'=>'i',

);

$usershow= array(
'index_usershow_1'=>'j',
'index_usershow_2'=>'k',
'index_usershow_content_1'=>'l',
'usershow_usershow_1'=>'m',
'usershow_usershow_2'=>'n',

);

$activity= array(
'ground_activity_1'=>'p',

);

echo '<div id="two"><select id="position" name="position" style="width:150px">';
foreach($$val as $k=>$v){


echo '<option value="'.$k.'" >'.$v.'</option>';

}
echo '</select></div>';

}

?>


[/code]
dragonms0 2011-08-29
  • 打赏
  • 举报
回复
都程序高手哇
phf0313 2011-08-29
  • 打赏
  • 举报
回复
第一个select 加onchange事件,触发时可以ajax获取第二个select的数据,也可以在开始时把第二个select要用到的数据赋值给js数组,当触发onchange事件时选择不同的js数组。
PIGer920 2011-08-29
  • 打赏
  • 举报
回复
这个是js的事情
可以用ajax随用随取
也可以把数据全部取到 然后用js控制输出

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧