【问题标题】:How to read a value from a select box with php?如何使用 php 从选择框中读取值?
【发布时间】:2013-05-22 08:44:14
【问题描述】:

我使用 cms contao,我得到了一些带有 3 个过滤器的项目的概览页面,其中一个看起来像这样:

<select name="catitem_region_de" id="ctrl_filter_field_catitem_region_de" class="select" onchange="window.location=this.options[this.selectedIndex].value"> 
   <option value="../cartitem_country/Deutschland" selected="selected">– Region –</option> 
   <option value="../cartitem_partner_country/Deutschland/catitem_region_de/Europa">Europa</option> 
   <option value="../cartitem_partner_country/Deutschland/catitem_region_de/Amerika">Amerika</option>
</select>            

如您所见,当您选择一个选项时,页面会使用所选过滤器刷新。 我的问题是,我希望在每次访问/刷新页面时,一个 php 脚本都会读取 selected="selected" 选项的值。所以它看起来像这样:

如果选项是“-Regio-”,则显示区域内容,如果内容是其他内容,则显示其他内容。

我如何用 php 做到这一点?

谢谢

【问题讨论】:

  • PHP 还是 JavaScript ?似乎可以通过 JavaScript 完成。对于 PHP,如果你不通过 GET / POST 传递任何值,你仍然需要依赖 JavaScript 来获取选定的值,或者通过大量的 DOM 解析。
  • 我会说 php,但我不确定。问题是,我有一些不同的 php 寺庙,例如“-regio-”“Europa”。但我在那个页面上没有提交按钮。
  • 为什么你不用 Ajax 和 PHP 来做这件事。根据下拉选择从 ajax 请求中获取数据并显示在适当的 div 上。

标签: php drop-down-menu


【解决方案1】:

如果我是你,我会把你的页面分成小块。

第一部分 - JavaScript 中的链接数组:

var links = { 0 : '', 
1 : '../cartitem_partner_country/Deutschland/catitem_region_de/Europa',
2 : '../cartitem_partner_country/Deutschland/catitem_region_de/Amerika' };

第二部分 - 下拉框:

<select name="catitem_region_de" id="ctrl_filter_field_catitem_region_de" class="select" onchange="changeDDB()"> 
  <option value="0" selected="selected">– Region –</option>
  <option value="1">Europa</option>
  <option value="2">Amerika</option>
</select>

第三部分 - 关于更改 JavaScript:

function changeDDB() {
  var idx = document.getElementById("ctrl_filter_field_catitem_region_de").selectedIndex;
  if(idx != 0) {
    window.location = links[idx];
  }
}

【讨论】:

  • 您的意思是实际创建一个数组? var links = ['', '../cartitem_partner_country/Deutschland/catitem_region_de/Europa', '../cartitem_partner_country/Deutschland/catitem_region_de/Amerika'];
  • 谢谢你们,但问题是,过滤是 cms 的一项功能。
猜你喜欢
  • 2013-09-06
  • 1970-01-01
  • 1970-01-01
  • 2011-03-13
  • 1970-01-01
  • 1970-01-01
  • 2021-09-21
  • 1970-01-01
相关资源
最近更新 更多