下拉框取决于php smarty中的另一个下拉菜单

时间:2010-08-02 18:15:15

标签: php javascript smarty

我有一个下拉框,代表公司名称。我想要另一个下拉框取决于所选公司,它代表该特定公司的项目。 任何1人都可以帮助我。

这是代码

      <tr><td align="right" valign="top" style="text-align:right"><strong>Company:</strong></td>
      <td align="left" valign="top" >`<select name= "proj" onChange="top.location =' {$smarty.server.PHP_SELF}'" ><option value='null'>all</option>`
 {assign var='cid' value='0'}


    {foreach from=$companyname item=p}



    {if  $p.cid != $cid}
       {assign var='cid' value=$p.cid}
        {html_options values=$p.cid output=$p.pname selected=$p.pname}{/if}
      {/foreach}
    </select>

 </td></tr>`

    <tr>
  <td align="right" valign="top" style="text-align:right"><strong>Project:</strong></td>
  <td align="left" valign="top" > 
   <select name= "comp"  >
  <option value='null'>all</option> 

 {if $p.pname != "" && $p.pname !="null"}

  {foreach from=$companyname item=p}

    {html_options values=$p.pname output=$p.name}
  {/foreach}{/if}
</select>
 </td></tr>

它没有正确格式化,但希望人们可以理解它。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

对于您的问题,您需要Ajax解决方案。您可以尝试使用具有简单ajax方法的javascript框架,我最喜欢的是jQuery。使用jQuery,您只需触发ajax函数即可将所选公司ID提交到服务器文件,您可以在其中获取其他选项列表,并使用可以填充第二个下拉菜单的回调函数。